Tests sind ein Grundpfeiler des Projektzyklus. Sie bieten viele Vorteile und helfen Entwicklern enorm. Es gibt verschiedene Möglichkeiten, während der Entwicklung einer App Tests durchzuführen.
-
Unit/UI-Tests: Diese sind wichtig, da der Code in der Regel viele miteinander verbundene Elemente enthält. Durch die Änderung eines Teils des Codes kann es zu Regressionen kommen. Unit/UI-Tests helfen den Entwicklern sicherzustellen, dass kein anderer Teil der App während der Featureentwicklung kaputt gegangen ist.
-
Nachteile: Die Erstellung von Unit/UI-Tests erfordert viel Zeit und sie können knifflig sein. Falsch geschriebene Unit/UI-Tests liefern falsche Ergebnisse (falsche Positive oder Negative) und verwirren die Entwickler. Daher ist es wichtig, Zeit und Ressourcen für qualitativ hochwertige Tests einzuplanen.
Tipp: Für sehr kleine oder zeitlich begrenzte Projekte kann es sinnvoller sein, keine Unit/UI-Tests zu schreiben, da es nicht viel zu überwachen gibt.
-
Manuelle Testdurchführung: Wenn die Entwicklung abgeschlossen ist, sollte die App manuellen Testern zur Verfügung gestellt werden.
Wichtig:
-
Vielfalt: Es sollten verschiedene Android-APIs und Bildschirmgrößen getestet werden. Da es viele verschiedene Android-Geräte gibt, muss jeder von ihnen eine gute Benutzererfahrung haben.
Tipp: Um die größte Vielfalt zu gewährleisten, beschaffen Sie Geräte in den Größen groß (Tablets und größere Telefone), mittelgroß (Standardhandys) und klein (kleinere Handys). Dadurch werden alle Bildschirmgrößen abgedeckt und die Skalierbarkeit der Layouts wird überprüft.
-
Test Automatisierung: Dieser Prozess ist komplexer als manuelle Tests und zielt darauf ab, Benutzergeschichten zu testen. Obwohl Entwickler Teile von Benutzergeschichten durch Unit/UI-Tests abdecken, werden diese nicht gemäß den tatsächlichen Benutzergeschichten geschrieben.
Vorteil: Ein korrekter Anwendungsablauf ist entscheidend, da ein fehlerhafter Ablauf zu einer schlechten Benutzererfahrung führen kann. Diese Tests werden in der Regel nach dem vollständigen Release der App durchgeführt. Bei der Planung ist es notwendig, Zeit für die Behebung von Fehlern und Problemen einzuplanen, die bei den Tests auftreten.
Tipp: Die frühzeitige Durchführung von Anforderungs-Tests ermöglicht es Ingenieuren, Probleme in frühen Entwicklungsphasen zu finden und spätere Refactorings zu reduzieren.