Posted in Allgemein

Appium – Die Lösung für mobile Testautomation?

Appium – Die Lösung für mobile Testautomation? Posted on 31. Juli 2019

Mit dem Angebot unterschiedlicher Betriebssysteme und Endgeräte, vor allem im mobilen Anwendungsbereich, gewinnen plattformübergreifende Applikationen (kurz App) immer mehr an Bedeutung.

Kunden erwarten, wenn eine App auf Android verfügbar ist, diese auch auf iOS verwenden zu können und umgekehrt. Darum wird immer öfter die Entscheidung getroffen Hybrid-Apps zu entwickeln, welche für Apples iOS-Geräte, genauso wie auf Googles Androiden laufen. Für die Entwicklung solcher cross-platform Apps gibt es mittlerweile eine Hand voll Tools, wie beispielsweise:

  • Xamarin
  • Phonegap
  • Sencha.

Aber welches Tool verwendet man um seinen Multiplattformer zu testen?

„Die 4 philosophischen Grundsätze, auf denen Appium aufbaut lauten:

  1. You shouldn’t have to recompile your app or modify it in any way in order to automate it.
  2. You shouldn’t be locked into a specific language or framework to write and run your tests.
  3. A mobile automation framework shouldn’t reinvent the wheel when it comes to automation APIs.
  4. A mobile automation framework should be open source, in spirit and practice as well as in name!

Können Sie sich mit diesen Grundsätzen identifizieren?“, fragt Andreas Steiner, Spezialist für Software Test bei SEQIS.

Für automatisierte Tests stellen Apple, genauso wie Google Automations-Frameworks für ihre Produkte zur Verfügung.

  • Ab iOS 9.3: XCUITest
  • Ab Android 4.2: UIAutomation 2

Android-Tests sind ausschließlich in Java zu schreiben, für iOS-Tests kann man zwischen Objective-C oder Swift wählen. Da Appium mit Libraries der populärsten Programmiersprachen versorgt ist, können Tests in folgenden Sprachen erstellt werden:

  • Ruby
  • Python
  • Java
  • JavaScript
  • PHP
  • C#
  • Objective C
  • Robotframework

Appium baut auf die Web-Driver API und erweitert diese um sämtliche von den Herstellern angebotenen Frameworks, sowie nützliche Smartphone-Funktionen (Zoomen, Scrollen etc.). Dies bringt den Vorteil, dass die App nicht instrumentiert (Anm: dh. nicht mit Zusatzinformationen erweitert und damit verändert) werden muss. Es wird also die App getestet, die letztendlich auch im Store landet.

Durch das verwendete Client-Server-Protokoll (JSON Wire Protocol) für den WebDriver, wird ausschließlich über HTTP-Requests kommuniziert. Es können Tests in jeder Programmiersprache geschrieben werden, solange sie eine Client-HTTP-API unterstützt. Allerdings ist es ratsam die von Appium zur Verfügung gestellten Libraries zu verwenden.

Die größte Stärke der verwendeten Client-Server Architektur ist, dass Tests und Server auf unterschiedlichen Geräten laufen können. Mithilfe von Cloud Services werden Tests auf einer Vielzahl echter aber auch simulierter Geräte durchgeführt. So können sich Kosten der Testumgebung senken lassen, ohne einen Qualitätsverlust befürchten zu müssen. Ganz im Gegenteil, es kann sogar bedeuten, dass sich dadurch die Qualität der App beträchtlich erhöht, vor allem, wenn zuvor nur auf den aktuellsten Flagships oder nur mit Emulatoren getestet wurde.

Mittlerweile werden auch Client-Lösungen für Appium angeboten. Beispielsweise bietet Appium Desktop eine einfache Oberfläche, einen Inspektor und wie aus anderen Tools bekannt, kann per Maus-Klick ein Testfall aufgenommen werden. Diese Client-Lösungen schränken einen in der Anwendung zwar oft ein, zeigen aber wie vielfältig Appium eingesetzt werden kann.

Außerdem: Appium ist Open Source und hat eine große Community hinter sich vereint. Es gibt selten ein Problem, welches gänzlich unbekannt ist oder für das es noch keine Lösungsvorschläge gibt. Es ist vertreten auf GitHub und seit 2016 Teil der JS Foundation.

Alle Infos zu Appium gibt es auf https://appium.io

Sie möchten mehr erfahren?
Hier können Sie unsere SEQIS QualityNews zu diesem Leitthema herunterladen: https://www.seqis.com/de/aktuelles-indexund hier gehts direkt zum PDF: Download QualityNews „Toolchain“.

Kennen Sie schon den SEQIS Videoblog?
Hier finden Sie darüber hinaus wertvolle Tipps und Informationen zu unterschiedlichen Bereichen aus der IT: www.SEQIS.com/youtube

Bleiben Sie auf dem Laufenden!
Unter blog.seqis.com lesen Sie immer aktuelle Artikel zu spannenden Themen aus der IT Welt.

Über die SEQIS GmbH

SEQIS ist der führende österreichische Anbieter in den Spezialbereichen Software Test, IT Analyse und agiles Projektmanagement: Beratung, Verstärkung, Ausbildung und Workshops – seit 2001 der Partner für hochwertige IT-Qualitätssicherung. Weitere Informationen zum Unternehmen finden Sie unter www.SEQIS.com.

Firmenkontakt und Herausgeber der Meldung:

SEQIS GmbH
Wienerbergstraße 3-5
A1100 Wien
Telefon: +436648378719
Telefax: +43 (2236) 320320350
https://www.SEQIS.com

Ansprechpartner:
Alexander Weichselberger
SEQIS
Telefon: +43 (2236) 320320-0
Fax: +43 (2236) 320320350
E-Mail: alexander.weichselberger@SEQIS.com
Für die oben stehende Story ist allein der jeweils angegebene Herausgeber (siehe Firmenkontakt oben) verantwortlich. Dieser ist in der Regel auch Urheber des Pressetextes, sowie der angehängten Bild-, Ton-, Video-, Medien- und Informationsmaterialien. Die United News Network GmbH übernimmt keine Haftung für die Korrektheit oder Vollständigkeit der dargestellten Meldung. Auch bei Übertragungsfehlern oder anderen Störungen haftet sie nur im Fall von Vorsatz oder grober Fahrlässigkeit. Die Nutzung von hier archivierten Informationen zur Eigeninformation und redaktionellen Weiterverarbeitung ist in der Regel kostenfrei. Bitte klären Sie vor einer Weiterverwendung urheberrechtliche Fragen mit dem angegebenen Herausgeber. Eine systematische Speicherung dieser Daten sowie die Verwendung auch von Teilen dieses Datenbankwerks sind nur mit schriftlicher Genehmigung durch die United News Network GmbH gestattet.

counterpixel