Was ist ein automatisiertes Testwerkzeug?
So wie ein physisches Produkt getestet wird, um zu überprüfen, ob es das gewünschte Verhalten und die gewünschten Spezifikationen erfüllt, wird auch Software getestet. Das Testen der Software kann manuell von Personen oder mithilfe von Tools durchgeführt werden. Ein automatisiertes Testtool ist eine Software, die zum Testen der Zielsoftware, dh der betreffenden Software, verwendet wird. Ein solches Tool führt verschiedene Tests auf der Zielsoftware aus und stellt fest, ob die Tests erfolgreich bestanden wurden.
Die Software muss getestet werden, um sicherzustellen, dass korrekte Ergebnisse generiert, gültige Eingaben akzeptiert und korrekt verarbeitet und ungültige Eingaben zurückgewiesen werden. Um festzustellen, ob die Ergebnisse schnell generiert werden, müssen Tests durchgeführt werden. Die Software funktioniert auch dann einwandfrei, wenn eine große Anzahl von Personen gleichzeitig darauf zugreift, und so weiter. Manuelle Tests werden häufig verwendet, sind jedoch abhängig von der Gründlichkeit der Personen, die die Tests durchführen. Das manuelle Testen von Software nimmt Zeit in Anspruch und erfordert eine erhebliche Anzahl von Mitarbeitern für die meisten nicht-trivialen Anwendungen, was die Kosten erhöht. Darüber hinaus können Tests für Tausende gleichzeitiger Benutzer oder große Datenmengen nicht einfach manuell durchgeführt werden.
Testautomatisierung ist die Verwendung von Tools zum Testen von Software. Ein automatisiertes Testwerkzeug ist selbst Software, die entwickelt, gekauft oder erworben werden kann. Das Tool startet normalerweise die Ausführung der Zielsoftware und leitet verschiedene Eingaben an die Zielsoftware weiter, um verschiedene Bedingungen zu testen. Es wertet die entsprechenden Ausgaben der Zielsoftware aus und verfolgt das Pass / Fail-Ergebnis jedes Tests. Am Ende einer Testreihe gibt das Tool in der Regel eine Zusammenfassung der Ergebnisse aus, sodass Anzahl und Schwere der Fehler schnell ermittelt werden können.
Ein automatisiertes Testwerkzeug kann auf zwei Arten funktionieren. Erstens kann es codegesteuert sein, dh das Tool kann eng mit dem geschriebenen Code verknüpft sein, sodass überprüft wird, ob die Ergebnisse für verschiedene Eingaben korrekt sind. Zweitens kann es benutzeroberflächenbasiert sein, wobei Aktivitäten von Benutzern wie Mausbewegungen, Tastatureingaben, Spracheingaben usw. nachgeahmt werden und die den Benutzern bereitgestellten Ausgaben auf Richtigkeit überprüft werden. Im letzteren Fall könnten die tatsächlichen Aktivitäten einer Person aufgezeichnet und dann vom Tool wiedergegeben werden, oder solche Aktivitäten könnten aus einem Skript von Befehlen generiert werden, die dem Tool zugeführt werden.
Auf dem Markt sind automatisierte Testwerkzeuge für allgemeine Zwecke erhältlich. Die meisten sind recht teuer, aber einige Tools sind kostenlos erhältlich. Wenn die Zielsoftware sehr spezifisch oder einzigartig ist, muss ein Testtool wahrscheinlich von diesem Softwareteam selbst entwickelt werden. Wie bei jeder Software weisen die Tools selbst Einschränkungen auf und funktionieren nur dann ordnungsgemäß, wenn sie über gute Eingabedaten verfügen. Wenn keine relativ vollständigen Tests durchgeführt werden, hilft das Tool nicht dabei, die Qualität der Zielsoftware zu bestimmen.
Ein automatisiertes Testwerkzeug hat viele Vorteile. Sobald eine Reihe von Tests erstellt wurde, können die Tests schneller ausgeführt werden, als eine Person sie ausführen kann. Die Tests können über Nacht oder zu ungeraden Zeiten durchgeführt werden, sodass die Leute sich auf das konzentrieren können, was sie am besten können. Die Tests können immer wieder ausgeführt werden, um festzustellen, ob sich Fehler in der Zielsoftware eingeschlichen haben, wenn diese im Laufe der Zeit geändert wird.