5. August 2015

Die AWS Device Farm unter der Lupe

Devices

Amazon bietet mit der AWS Device Farm seit Mitte Juli einen neuen Service für das automatisierte Testing von iOS-, Android- und FireOS-Apps in der Cloud an. Das Angebot klingt im ersten Moment verlockend. Grund genug für unsere QA-Abteilung die Device Farm genauer unter die Lupe zu nehmen.

Mit der Übernahme von AppThwack hat Amazon einen weiteren Dienst zu seinem Amazon-Web-Services-Angebot hinzugefügt: Mobile Testing in der Cloud. Das heißt iOs-, Android- und FireOS-Entwickler können ihre Apps auf echten Geräten in der Cloud testen. Es werden also keine Emulatoren eingesetzt, sondern physische Geräte mit verschiedenen Service-Provider-Konfigurationen – beispielsweise sechs Varianten des HTC One M8. Die vollständige Liste gibt es hier. Momentan spiegelt sie einen starken Fokus auf den nordamerikanischen Markt wieder.

Für das Testing lassen sich neben dem Gerät noch verschiedene andere Parameter wie Standort, Sprache, Anwendungsdaten und andere installierte Apps festlegen, um einer realen Nutzung so nahe wie möglich zu kommen. Durch die Integration mit diversen Developer-Tools wie Jenkins soll sich das Testing nahtlos in den Entwicklungs-Workflow einbauen lassen und mit umfangreichen Berichten, eine schnelle Problemlösung ermöglichen. Für die Tests kann man auf die Amazon-Test-Suite zurückgreifen oder andere Frameworks wie Appium, Calabash und Co. verwenden. Auch eine sogenannte Fuzzing-Funktion ist enthalten – sprich willkürliche Eingaben als würde ein Affe mit der App rumspielen. Nach jedem Test werden die Geräte vollständig zurückgesetzt.

Echte Geräte – beschränkte Auswahl

Ohne Frage ist es von Vorteil, dass auf echten Geräten getestet wird, keine Emulatoren im Einsatz sind und auf mehreren Geräten gleichzeitig getestet werden kann. Die Geräteauswahl bei Android ist auf die Flaggschiff-Devices der Hersteller beschränkt. Am 4. August hat Amazon das Angebot um iOS erweitertet und bietet dort einen großen Gerätepark mit iPhones, iPads und auch iPods aus verschiedenen Generationen. Die beiden wichtigsten Betriebssysteme sind damit abgedeckt. Für Nischensysteme wie Windows und Co. muss einen weiteren Dienstleister in Anspruch nehmen. Konkurrenten wie Xamarin sind hier breiter aufgestellt und bieten beispielsweise mittlerweile über 1.000 verschiedene Geräte über OS-Grenzen hinweg an. Ein weiterer Nachteil aus unserer Sicht ist, dass die Device Farm die Apps re-signed, was Funktionalitäten, die auf der Signatur einer App basieren, zerstören kann. Zum Beispiel wird dadurch das Testen von Features, die die Google Maps API verwenden, eingeschränkt oder ist nicht umsetzbar. Positiv hervorzuheben sind die detaillierten Berichte, die die AWS Device Farm in kürzester Zeit liefert. Sie umfassen neben Screenshots der Anwendung auch umfangreiche Informationen zur Performance auf den ausgewählten Geräten.

Amazon bietet zwei Preismodelle an: Pay-as-you-go mit einem Preis von 0,17 USD pro Geräteminute oder eine monatliche Flatrate von 250 USD pro Gerät. Angesichts dieser Bepreisung erscheint uns nur das Flatrate-Modell sinnvoll und auch nur dann, wenn man eine große Anzahl komplexer Apps und Projekte testet. Ebenfalls sehr spannend ist auch die Frage, wie Amazon die AWS Device Farm in Zukunft gegenüber dem Cloud Test Lab von Google positionieren wird. Dieses wurde von Google auf der hauseigenen Entwicklerkonferenz Google I/O im Mai angekündigt. Allerdings hält sich Google mit genauen Angaben bisher zurück und legt sich nur auf einen Release bis Ende des Jahres fest. Wir werden beide Tools auf jeden Fall ausprobieren, vergleichen und über unsere Erfahrungen an dieser Stelle berichten.

Update 05.08.2015: Just zur Veröffentlichung des Blogposts hat Amazon die AWS Device Farm um iOS-Geräte erweitert. Infos dazu gibt es auf der englischen Seite. Wir haben den Post entsprechend angepasst.

Die Bildrechte liegen bei Jon Fingas (Creative Commons, unverändert).

Pressekontakt

Tobias Oberndorfer press@intive.com
+49 151 414 616 73

Social Media

Alle unsere News findet Ihr auch auf unseren Social Media Kanälen: