Automatisiertes Testen von Mobil- und Webanwendungen

Categories: MobilityTechnology

Mit dem Aufkommen von Smartphones und der Möglichkeit, Anwendungen für Telefone und Tablets zu schreiben, entsteht ein völlig neues IT-Segment, auf das auch das Testen reagiert. Neue Technologien und Verfahren zum Testen von Anwendungen auf mobilen Geräten entstehen.

Eine der größten Herausforderungen beim automatisierten Testen ist das Testen mehrerer Arten von Mobilgeräten und verschiedener Versionen von Betriebssystemen (Android, iOS). Es ist sogar möglich, mit einem Code sowohl iOS, Android als auch das Webinterface zu testen. Stellen wir uns mögliche Lösungen vor.

Appium

Einer der führenden Anbieter auf diesem Gebiet ist Appium. Appium ist ein in NodeJS geschriebenes „Open Source“ [1]-Tool. Es eignet sich zum Ausführen von Skripten zum Testen nativer Apps, mobiler Web-Apps und Hybrid-Apps auf Android oder iOS unter Verwendung des Webdriver-Protokolls. Es hat eine breite Nutzerbasis und eine umfangreiche Dokumentation [2]. Appium ist ein Server, über den Skripte gestartet werden, entweder gegen echte Geräte oder über einen Emulator.

Ein großer Vorteil ist die volle Kontrolle über den gesamten Prozess der Ausführung von Skripten und über die Konfiguration emulierter Geräte. Ein weiterer Vorteil ist die Möglichkeit, Testskripte in mehreren Sprachen zu schreiben, sei es Python, Java, PHP oder Ruby. Es ist auch möglich, eine mobile Webanwendung auf einem mobilen Gerät auszuführen.

Der Nachteil von Appium ist das fehlende Testen der Webanwendung im Webbrowser auf dem „Desktop“. Zum Testen einer Webanwendung auf Desktop-Computern und Laptops ist eine der geeigneten und beliebten Lösungen z.B. Selen [3]. Dies bedeutet jedoch eine Aufteilung der Testcodebasis nach Plattform. Appium ist gut nutzbar, wenn das Testteam selbstständig ohne Entwicklerteam arbeitet. Sie benötigen lediglich eine installierbare Version der zu testenden Anwendung.

Was ist, wenn wir einen Testcode für alle Plattformen haben wollen?

In den letzten Jahren gab es Bemühungen von Entwicklern, einen Code zu haben, aus dem Anwendungen für mehrere Plattformen (Android, iOS, aber auch das Web) generiert werden. Eine dieser Technologien ist React Native. Hand in Hand geht die Möglichkeit, mit CodeceptJS [4] mehrere Plattformen mit einer einzigen Codebasis zu testen. CodeceptJS ist ebenfalls „Open Source“ [5]. Die Tests werden in der sogenannten BDD geschrieben (Behavior-Driven Development) unter Verwendung der Gherkin-Syntax. Das oben erwähnte Appium kann verwendet werden, um Tests mit echten oder emulierten Geräten durchzuführen. Der Selenium-Treiber kann erneut zum Testen der Webanwendung verwendet werden. Wenn es also notwendig ist, eine Anwendung zu testen, die die gleiche Funktionalität auf mehreren Plattformen (Android, iOS, Web) hat, ist CodeceptJS eines der sehr geeigneten Tools für automatisiertes Testen. Es besteht keine Notwendigkeit, die Testcodebasis für native und Webanwendungen aufzuteilen.
Für die eigentliche Ausführung der Skripte wird innerhalb von CodeceptJS ein Tool ausgewählt, über das die Tests ausgeführt werden.

TestProjekt

Eine weitere interessante Lösung zum Erstellen komplexer plattformübergreifender Tests ist TestProject. TestProject ist ein relativ neues Projekt, das eine grafische Oberfläche (GUI) zum Erstellen von Tests bietet.

Author

Data Analytics verbessern das Kauferlebnis in der Automobilindustrie

Author

GlobalLogic Marketing

View all Articles

Top Insights

Homeoffice Whitepaper

Homeoffice Whitepaper

AtlassianCloudSecurityAutomotiveCommunicationsConsumer and RetailFinancial ServicesHealthcareManufacturing and IndustrialMediaTechnology

Top Authors

Dr Maria Aretoulaki

Dr Maria Aretoulaki

Principal Consultant Conversational & Generative AI Design

Oleksandr Syvashenko

Oleksandr Syvashenko

Leitender Ingenieur

Hrushikesh Zadgaonkar

Hrushikesh Zadgaonkar

Senior Consultant, Engineering

Luca Jungemann

Luca Jungemann

Online Marketing Manager

Blog Categories

  • URL copied!