App-Entwicklung findet parallel in verschiedenen Phasen statt und damit auch das App-Testing. Oft gibt es beim neuesten Build, neuestem Update oder bei einer Feedbackschleife zum Kernprodukt unterschiedliche Timelines einzuhalten und dementsprechend nur wenig Zeit alle Komponenten einer Entwicklung erneut auf Herz und Nieren zu prüfen. In diesem Artikel erklären wir Dir, wie Du am besten das Testing einer App planst, wenn du wenig Zeit hast und welche Bereiche du am besten priorisierst.
Ein Release ist geplant oder neue rechtliche Anforderungen erzwingen zeitlichen Druck für neue Features und es gibt weder das Budget noch die Kapazitäten für zeitintensives Testing? In diesem Fall lohnt es sich zunächst mit den Stakeholdern und dem Product Owner zu besprechen welche Features besonders wichtig sind und daher eher priorisiert werden sollten.
Bei der Priorisierung sollten verschiedene Aspekte und Perspektiven berücksichtigt werden:
Wurden die Testschwerpunkte identifiziert, ist für die Priorisierung auch die Reihenfolge sehr wichtig: Welche Features bauen aufeinander auf, welche Tests legen die Grundlage für den nächsten? Bestimmte Test Cases sind voneinander abhängig und müssen gemeinsam abgearbeitet werden, um das Testing möglichst effizient zu gestalten. Dazu ist es wichtig, dass man die Abhängigkeiten schon bei der Erstellung der Test Cases berücksichtigt.
Bei der Priorisierung von Tests sind auch das Know-How und die Erfahrung des Teams wichtig: Wurden Features bereits getestet, gibt es hierzu Erfahrungen und Modelle, dann ist das umso besser. Oftmals überschneiden sich Test- und Entwicklungskompetenzen in der zeitlichen Planung eines Projekts. Das bedeutet: Testteams, die das Produkt von Anfang an betreuen, entwickeln entlang des Projektplans auch die notwendigen Tests, um in späteren Phasen priorisierte Tests schnell durchführen zu können.
Anstelle mit Schätzungen zu arbeiten ist die Definition von Zeitkontingenten zu bevorzugen. Dafür gibt es gute Gründe: Finden Tester:Innen Fehler, dann müssen diese durch die Developer natürlich auch noch gefixt werden. Wie lange ein Fix dauert, ist dabei schwer zu sagen und hängt von dem entdeckten technischen Problem ab. Es ergibt also mehr Sinn ein Zeitkontingent innerhalb eines Sprints zu definieren und am Ende zu bilanzieren, welche Fehler entdeckt und behoben werden konnten. In diesem Sinne dient die Priorisierung als ein Abgleich von Erwartungen und Machbarkeiten und als Grundlage für das Lernen in kommenden Sprints.
Wurden aufgrund der oben genannten Kriterien nun also Tests priorisiert, lohnt es sich unter Umständen dennoch Tester:Innen auch explorativ vorgehen zu lassen. In der explorativen Erkundung einer App werden so eventuell Bugs aufgezeigt, die vorher nicht zutage getreten waren. Diese Erhebung ist wichtig, um schließlich im nächsten Sprint wieder eine Grundlage für die Priorisierung zu haben.
Je nachdem in welchem Build oder Version sich eine Software befindet, gewichten sich andere Testszenarien stärker als andere. Der Anspruch eine fehlerfreie Funktionalität zu gewährleisten, muss dementsprechend auch mit zeitlichen, prozessbezogenen und rationellen Abwägungen harmonisiert werden. Wir hoffen, wir konnten Euch mit diesem Beitrag einen Abriss über die wichtigsten Entscheidungsgrundlagen und Faktoren für die Priorisierung von Test Cases geben und stehen Euch – wie immer – mit Rat und Tat zur Seite. Appmatics testet inhouse mit echten Tester:Innen auf hunderten unterschiedlichen echten Geräten systemagnostisch und umfassend. Durch jahrelange Erfahrung im Testing haben wir auch die Expertise Euch bei der Priorisierung Eurer Test Cases sowie im ganzen Testprozess zu unterstützen. Wir freuen uns auf Eure Herausforderungen.