Testautomatisierung von mobilen Anwendungen mit Appium

Testautomatisierungstools Appium

Testautomatisierung von mobilen Anwendungen mit Appium

In dieser Folge der Serie Testautomatisierungstools für mobile Anwendungen schauen wir uns die Testautomatisierung von mobilen Anwendungen mit Appium an. Im Gegensatz zu Desktop- und Webanwendungen stellen mobile Anwendungen Tester vor eine größere Herausforderung: Die Technologien, auf denen diese ausgeführt werden, gestalten sich immer komplexer. Einerseits werden, wie der Name “mobile” schon sagt, die Anwendungen im täglichen Leben genutzt und deswegen stellen die Nutzer größere Anforderungen an sie. Auch wenn nur die zwei gängigen Betriebssysteme Android (75 % Marktanteil 2017) und iOS (24 % Marktanteil) genutzt werden, gibt es gerade im Android-Umfeld eine Vielzahl an Gerät- und Betriebssystem-Versionen. Nicht zu vergessen ist die Fülle an Sensoren eines Mobilgeräts, die mit der mobilen Anwendung interagieren.

Mobile Anwendungen brauchen eine andere Verteilung manueller und automatisierter Tests als Desktop- und Webanwendungen. Ein Automatisierungstool, welches in der Industrie eingesetzt wird und sich in der Praxis bewährt hat, ist Appium. Appium stellt, wie auch Selenium, den gängigen Programmiersprachen eine API bereit, damit diese mit der jeweiligen Programmiersprache genutzt werden können. Wie Selenium so ist auch Appium ein Tool, welches in Verbindung mit einem Framework (z.B. TestNG, NUnit) zur Testautomatisierung genutzt wird.  

Cross-Platform-Test von nativen, hybriden und Web-Apps

Appium hat den großen Vorteil, dass damit sowohl Android- als auch iOS-Anwendungen automatisiert getestet werden können. Es lassen sich auf beiden Plattformen native, hybride und Web-Apps testen. Mittlerweile kann man mit Appium Windows- und Mac-Desktop-Apps testen. In Zukunft ist es vorgesehen, damit Internet of Things-Geräte automatisiert zu testen. Appium ist wie Selenium ein Open-Source-Tool, somit fallen keine Lizenzkosten an. Appium hat zahlreiche Nutzer und verfügt über umfangreiche technische Dokumentationen. Mit Appium kann mal sowohl die mobilen Anwendungen auf physischen Geräten als auch auf Emulatoren und Simulatoren automatisiert testen. Genau wie bei Selenium, gibt es Cloud-Anbieter, die eine Infrastruktur bereitstellen, um die automatisierten Tests auf einer Vielzahl von Versionen von Betriebssystemen und Geräten automatisiert zu testen. Sogar Visual-Test-Automation ist mit Appium mit Anbietern wie Applitools möglich. Das aufgebaute Testing-Framework mit Appium und der jeweiligen Programmiersprache lässt sich ohne großen Aufwand in einen Continuous Integration Server integrieren. Die parallele Ausführung der Tests führt zu schnellem Feedback.

Nicht out-of-the-box

Um eine Test Automation Solution mit Appium zu erstellen, benötigt man gute Programmierkenntnisse. Das kann bei der Einarbeitung zu einem höheren Zeitaufwand führen. Wie auch bei Selenium gibt es bei dem Open-Source-Tool kein Service Level Support. Der Aufbau einer Test Automation Solution ist nicht out-of-the-box und muss individuell, den Projektanforderungen entsprechend, von Grund auf implementiert werden.

Fazit

Der richtige Einsatz von Appium kann einen großen Mehrwert für das automatisieren von funktionalen und visuellen Tests bedeuten. Wichtig ist zu beachten, dass gerade mobile Anwendungen so getestet werden, wie sie der Endnutzer beansprucht. Beispielsweise sollte im Falle einer Sport App nicht versucht werden, alles im Labor zu automatisieren, sondern so zu testen, wie sie im täglichen Leben genutzt wird. Für schnelles Feedback sollte man die Testautomatisierung mit Appium im Emulator und Simulator automatisiert testen. Man sollte jedoch die Mehrheit der Tests, manuelle und automatisierte, am echten Gerät ausführen.

Back to top
Wir benutzen Cookies um die Nutzerfreundlichkeit der Webseite zu verbessen. Durch Deinen Besuch stimmst Du dem zu.