Automatisierte Tests
Pre-Launch-Berichte sind automatisiert erstellte Berichte, die die Qualität einer App
messen. Zur Generierung
der Berichte durchläuft die App verschiedenste Tests.
Die Tests bilden unzählige Szenarien und Interaktionen ab, die mit einem Android Gerät
möglich sind. Dabei
werden die verschiedenen Android Versionen auf einer großen Auswahl an simulierten und
physischen Geräten
unterschiedlichster Herstellern genutzt.
Innerhalb von nur wenigen Minuten durchlaufen die Tests die komplette App des
Entwicklers.
Die Pre-Launch-Berichte sind Teil des Veröffentlichungsprozesses, den Apps beim Hochladen
in einer der
verschiedenen Strecken („Tracks“) im Play Store durchlaufen.
Übersicht der Tracks
Die verschiedenen Tracks, unterscheiden sich durch die Zugänglichkeit für die
Testgruppen. Google bietet
hierbei vier Tracks an.
Phase der Veröffentlichung
Link-Verteilung & Play Store
Unternehmensmitarbeiter + ausgewählte Nutzer
Phase der Veröffentlichung
Phase der Veröffentlichung
Unternehmensmitarbeiter + ausgewählte Nutzer
Phase der Veröffentlichung
Link-Verteilung & Play Store
Phase der Veröffentlichung
Test-Kategorien
Die im Anschluss an die Tests erstellten Berichte klären den Entwickler genau über die
entdeckten Probleme in
den folgenden Kategorien auf:
- Stabilität
- Kompatibilität
- Leistung
- Barrierefreiheit
- Sicherheit
Beim Stabilitätstest werden Abstürze der App aufgezeichnet und festgehalten.
Die Tests sind speziell darauf ausgelegt kritische Stellen zu finden, an denen die App
abstürzt und das
Nutzererlebnis dadurch stark eingeschränkt wird. Sie werden dabei auf vielen
verschiedenen Geräten
durchgeführt, um mögliche geräteabhängige Fehler zu finden. Der Entwickler erhält dabei
eine Übersicht zu
jedem Test-Gerät, der zugehörigen Android-Version, die Anzahl der Abstürze, einen
Stacktrace und die
Log-Meldungen zur Nutzung der App. Den Fehlerbeschreibungen sind zusätzlich noch
Screenshots und Videos
beigefügt, um die Fehlerbehebung möglichst effizient zu gestalten.
Die Kompatibilitätstests überprüfen alle APIs, die nicht im öffentlichen Android SDK
enthalten sind. Es wird
dabei festgestellt, in wie weit diese mit den unterschiedlichen Geräten und Systemen
kompatibel sind. Die
Kompatibilitätsprobleme werden in die drei Prioritäts-Stufen „Restricted“,“supported but
with restriction
imminent“ und „Unsupported, restriction not imminent“ eingeteilt. Zu jeder inkompatiblen
API gibt der
Pre-Launch-Bericht eine Erklärung zur möglichen Inkompatibilität ab.
Die Tests aus der Kategorie Leistung messen die benötigten Ressourcen beim Ausführen der
App. Der Testbericht
beinhaltet die folgenden Metriken:
- Bilder pro Sekunde („Average frames per second“)
- CPU-Auslastung („Average CPU“)
- Netzwerk: gesendete Bytes / Sekunde („Average network sent“)
- Netzwerk: empfangene Bytes / Sekunde („Average network received“)
- Arbeitsspeicher („Average memory“)
Abbildung 1: Test Bericht
Die Metriken visualisieren dem Entwickler wichtige Details zur Leistung der App. Die
Daten können dabei als
Durchschnittswert aller Geräte abgerufen werden oder gerätespezifisch mit einer
Bildschirmaufnahme der
Nutzung überwacht werden.
Bei den Tests zur Barrierefreiheit wird die Bedienbarkeit der Applikation analysiert.
Hierbei werden die
Größe der Bedienelemente und deren Sichtbarkeit ausgewertet und die Nutzbarkeit für die
verschiedenen
Nutzergruppen betrachtet (bspw. für Schreibrichtungen von rechts nach links). Ein
bedeutender Vorteil der
Tests zur Barrierefreiheit ist die Nutzung mehrerer Sprachen. Dadurch können mögliche
UI-Probleme aufgedeckt
werden, die bspw. durch längere Texte in anderen Sprache entstehen können.
Sicherheitstests untersuchen den Code der App auf Sicherheitslücken, die von Angreifern
ausgenutzt werden
könnten. Die gefundenen Sicherheitslücken sollten vor der Veröffentlichung der App
behoben werden.
Testergebnisse
Die Testergebnisse aller Test-Kategorien werden in drei verschiedene Stufen
eingeteilt:
Die problematischsten Ergebnisse werden als „Fehler“ eingestuft. Fehler verhindern
die Nutzung der App
oder schränken das Nutzererlebnis stark ein. Die gefunden Probleme
sollten vor der Veröffentlichung der App behoben werden.
In der Stufe „Warnungen“ werden die Probleme mittlerer Qualität eingestuft.
Warnungen umfassen
Probleme, die die Nutzung der App erschweren oder zukünftig verhindern könnten.
„Kleinere Probleme“ decken die unterste Stufe der Kategorisierung der gefundenen
Problemen ab. Es
fallen
dabei vor allem Probleme an der Gestaltung des User Interfaces und kleinere Probleme an
der Implementierung
(zumeist einfach nur Stilprobleme) an. Bemängelt werden hier oft fehlende oder nicht
sichtbare
Beschreibungen, schlecht lesbare Farbkontraste und zu kleine Bereiche für
Touch-Elemente.
Abbildung 2: Test Ergebnis
Einschränkungen
Will man Pre-Launch Berichte für sein Projekt verwenden, so muss man die folgenden Punkte
berücksichtigen:
- Alle Test-Geräte, die zur Generierung der Pre-Launch-Berichte eingesetzt werden
befinden sich in den
Vereinigten Staaten. Die App darf daher keinen lokalen Restriktionen unterliegen.
- Unter den Test-Geräten befinden sich ausschließlich Smartphones und Tablets.
Wearables, TVs und andere
Geräte sind von den Tests ausgeschlossen.
- Apps, die ein Abo-Modell nutzen, können nur bedingt getestet werden, da von den
Test-Szenarios keine
In-App-Käufe unterstützt werden.
- Außerdem können nur native UIs getestet werden. Apps, die mit OpenGL und Unity3D
erstellt wurden können
daher nicht getestet werden. Alle Tests werden dabei in der Portrait-Ausrichtung
ausgeführt.