Nachdem ich verschiedene Mobile App Testing Automatisierungen mit den Werkzeugen Ranorex und Appium vorgenommen hatte, möchte ich hiermit meine Erfahrungen darstellen. Dabei möchte ich meine Herangehensweise in der Tool- und Geräteauswahl darstellen und dann auf die ersten Schritte in der Skriptentwicklung eingehen.
Herangehensweise
Auswahl Automatisierungstool
Zuerst muss ein Automatisierungstool gefunden werden, welches die Anbindung und Automatisierung von mobilen Geräten, wie Smartphones und Tablets, unterstützt. Hierbei ist darauf zu achten, dass diese auch Mobile Apps und nicht nur eine Browser Automatisierung unterstützen.
Neben kommerziellen Tools, wie TestComplete, SilkTest, eggPlant oder Ranorex haben sich auch OpenSource bzw. andere lizenzkostenfreie Produkte, wie iOS UI Automation, UI Automator oder auch Appium am Markt etabliert. Darüber hinaus gibt es eine zahlreiche Zahl von gehosteten Angeboten, die Gerätesimulationen zum Mieten anbieten. Hierunter fallen 21Labs, Test IO, Kobiton und Blazemeter. Dabei bieten viele dieser Cloud-Anbieter für den Einstieg auch eine kostenfreie, eingeschränkte Version an.
Da Aufgrund der Vielzahl der Anbieter hier kein Marktüberblick gegeben werden kann und alle Anbieter im Detail verglichen wurden, kann ich hier nur eine Auswahl von Tools zeigen, mit denen ich mich selbst beschäftigt habe.
Ich selbst habe aus vorherigen Projekten schon mit Ranorex Erfahrungen sammeln können und es war für mich naheliegend, mich mit dem Tool zu beschäftigen. Darüber hinaus gibt es für Appium eine große und präsente Community, so dass ich hier gute Chancen sah, eine erfolgreiche Umsetzung zu erzielen. Deshalb werde ich mich in den späteren Ausführungen auf Beispiele in Ranorex und Appium beschränken.
Physikalische Geräte
Nachdem sich für ein Automatisierungstool entschieden wurde, sollten die ersten Versuche mit einem physikalischen Gerät erfolgen. Egal ob iOS oder Android, das Gerät muss soweit umkonfiguriert werden, um einen Zugriff von “außen” zuzulassen. Hier ist die Freischaltung des Entwicklermodus und die Aktivierung des USB-Zugriff gemeint. Schließt man eines dieser umkonfigurierten Geräte an, sollte mit den Automatisierungstools ein Zugriff möglich sein.