1. Ist meine Software schon testbar?
2. Welche Art von GUI-Tests möchte ich automatisieren?
3. Welche Rahmenbedingungen muss ich für automatisierte GUI-Tests schaffen?
4. Wie wähle ich das richtige Tool aus?
5. Verfügt mein Team über die notwendigen Ressourcen?
6. Welches Werkzeug passt in meine übrige Toollandschaft oder brauche ich noch zusätzliche Tools?
7. Habe ich genug Zeit für die Automatisierung der Tests und deren Wartung?
8. Gibt es Budget für den Toolkauf?
9. Wie und wo erhalte ich Hilfe, wenn während der Tests ein Problem auftaucht?
10. Kann ich Tools ausprobieren?
Macht es für Sie Sinn ein Tool für beide Bereiche zu verwenden oder ist es nicht besser für diese getrennten Bereiche zwei Tools zu verwenden?
Automatisieren Sie Softwaretests mit häufigen Änderungen am Quellcode, die Sie regelmäßig überprüfen möchten und die beim manuellen Testen für den Tester ermüdend und schlichtweg langweilig sind. Tester können sich dann auf spannendere Aufgaben wie die Testarchitektur und das Testdesign fokussieren sowie das manuelle Testen fortgeschrittener Anwendungsfälle. Dies kann Zeit und Geld sparen, die Initialkosten für die Testautomatisierung müssen sich aber natürlich erst amortisieren.
Für eine stabile und erfolgreiche Testautomatisierung ergeben sich eine Reihe von Fragen, über die Sie sich im Vorfeld Gedanken machen sollten:
Diese Fragen beeinflussen die Art und Weise der Implementierung der Tests und auch z.B. wie flexibel die Skripte gehalten werden sollen.
Erstellen Sie am besten zunächst eine Liste an Kriterien für die Toolauswahl (Beispiel-Checkliste von QF-Test).
Sie können sicherlich schon aus dem Stegreif mehrere „Must-have“-Kriterien aufzählen: z.B. unterstützte Technologie und Plattform, Integration in den Buildprozess oder stabile Erkennung der graphischen Elemente Ihrer Software.
Auf der anderen Seite gibt es für Sie bestimmt auch „Nice-to-have“-Kriterien, auf die Sie zur Not zugunsten eines anderen Aspektes verzichten können. Sie können die unterschiedlichen Tools hinsichtlich dieser Kriterien testen, bewerten und vergleichen. Natürlich müssen Sie sich dann auch noch für eines entscheiden. :)
Ein weiterer Punkt ist die Art und Weise, wie die Tests erstellt werden sollten: Möchten Sie Tests codieren, sie per Capture/Replay aufzeichnen, einen Schlüsselwort basierten Ansatz oder einen Ansatz wie Behavior Driven Testing (BDT) verfolgen?
Am allerwichtigsten ist jedoch, dass das Testteam das Tool akzeptiert.
Je nachdem, wie viele Tests automatisiert werden sollen, sollten Sie sich überlegen, welches Verhältnis an Testern, Testautomatisierern bzw. Entwicklern Sie mit welchem Erfahrungsstand für Ihr Automatisierungsprojekt benötigen oder sind wir mal ehrlich, tatsächlich zur Verfügung haben. Wenn die Tests dann automatisiert sind, bleibt dem Team auf jeden Fall mehr Zeit sich um weitere Aufgaben zu kümmern.
In jedem Fall ist es sinnvoll, das Team auf das bestimmte Tool zu schulen, sei es intern, von einem externen Anbieter oder dem Toolhersteller. Im Fall von QF-Test empfehlen wir für die Schulung 3 bis 5 Tage Training vor Ort oder als Webinar.
Besteht die Möglichkeit einer weiteren Betreuung oder eines Supportvertrages, um bei Fragen schnell und kompetent Hilfe von erfahrenen Anwendern bzw. dem Softwarehersteller direkt zu bekommen? Wird z.B. eine Starthilfe in Form einer Beratung angeboten?
Haben Sie noch weitere Fragen? Zögern Sie nicht, sich an uns zu wenden:
per E-Mail an service@ oder Telefon qfs.de+ 49 8171 38648-10.
Welche Tools und Umgebungen sind bereits bei uns gesetzt? Kann das Testtool in Ihre bestehende Umgebung integriert werden?
Beispiele von 3rd party tools, an die Sie bei der Automatisierung denken sollten:
Sie müssen sich im Klaren sein, dass automatisierte Tests zunächst einmal erstellt werden und auch regelmäßig gewartet werden müssen.
Wenn die Tests aufgesetzt sind, verringern sie natürlich die Zeit, die Sie sonst mit manuellem Testen verbracht hätten. Sie haben den Vorteil, dass Sie die Tests regelmäßig und auch öfter als vorher durchführen können und damit schnelleres Feedback über den Zustand Ihrer Software erreichen. Aufgrund des schnelleren Feedbacks können Sie gezielter und früher auf mögliche Fehler reagieren. Das verbessert Ihre Softwarequalität.
Nachdem es Open Source und kommerzielle Testautomatisierungstools gibt, sollte bei der Wahl eines kostenpflichtigen natürlich Budget vorhanden sein.
In beiden Fällen müssen Sie einen gewissen Aufwand spendieren, um die automatisierten Tests zu erstellen.
Vermeiden Sie jedoch den Fehler nur aufgrund der Kosten ein weniger passendes Softwarewerkzeug auszuwählen als Ihre Anforderungen sind, denn die Folgekosten für den Umzug auf ein anderes Tool können weitaus höher sein. Kommerzielle Tools garantieren meist Support und Weiterentwicklungen.
Unabhängig von der Toolwahl lässt sich sagen, dass die eigenen Personalkosten den wesentlich größeren Finanzaufwand im Testautomatisierungsprozess darstellen.
Ziehen Sie ein Tool in Betracht, das direkt von einem Beratungsunternehmen unterstützt wird, können Sie die Beratungsleistung direkt dazu erwerben. Es gibt dabei Berater, die auf unterschiedliche Teilbereiche der Automatisierung oder generell auf Testprojekte spezialisiert sind.
Sie können auch Tools erwerben, die Support und Beratung anbieten.
In jedem Fall ist es sinnvoll im Zweifelsfall ein Beratungs- und Schulungsangebot wahrnehmen zu können, falls man mit der eigenen Software an ungeahnte Grenzen stößt.
Ja, da es eine Vielzahl an Tools für Testautomatisierung gibt, ist auch deren Evaluation möglich.
Meist hinterlassen Sie hierbei Ihre Kontaktdaten und bekommen dann eine Testlizenz zur Verfügung gestellt.
Vielleicht ist ja QF-Test das richtige Tool für mich?