Eine Person, die für Entwurf, Entwicklung und Wartung einer Testautomatisierungsarchitektur verantwortlich ist sowie für die technische Weiterentwicklung der daraus resultierenden Testautomatisierungslösung.
Die Umsetzung/Realisierung einer Testautomatisierungsarchitektur, z.B. eine Kombination von Komponenten, die einen spezifischen Testautomatisierungsauftrag umsetzt. Die Komponenten könnten Standard-Testwerkzeuge, Testautomatisierungs-Frameworks sowie Testhardware beinhalten.
Ein System als Testobjekt
Das SUT st das zu testende System, d.h. das Testobjekt'
Übliche Abkürzung für System unter Test: SUT
Bei der Automatisierung ist es wichtig, eine genaue Definition des SUT und seiner Schnittstellen zu haben, denn die automatisierten Testfälle müssen mit dem SUT kommunizieren
Eine Abfolge von Anweisungen für die Durchführung eines Tests.
Bei manuellen Tests versteht man unter einem Testskript eine detaillierte Arbeitsanweisung für den Tester, wie der Test auszuführen ist
Bei der Testautomatisierung ist ein Testskript die Implementierung eines Testfalls, die üblicherweise in einer Skriptsprache (z.B. ruby oder python) geschieht
Die Arbeitsergebnisse, die während des Testprozesses erstellt werden und dazu gebraucht werden, um die Tests zu planen, zu entwerfen, auszuführen, auszuwerten und darüber zu berichten.
Was gehört zu den Testmitteln?
Software
Dokumentation
Testfälle
Testumgebungen
Testdaten
Ein abstrakter Plan, um langfristige Ziele der Testautomatisierung unter gegebenen Randbedingungen zu erreichen.
Die Testautomatisierungsstrategie ist das warum der Testautomatisierung, z.B.
erhöhte Qualität (da wir mehr und/oder bessere Tests durchführen)
schnellere Time-To-Market (da wir schneller testen)
reduzierte Testkosten (da wir Fehler früh finden)
reduzierte Regressionstestzykluszeit (besonders im Agilen Test)
zusätzliche Zeit/Ressourcen für manuellen Test (z.B. exploratives Testen)
Eine individualisierte Softwareschnittelle, die es erlaubt ein Testobjekt automatisiert zu testen.
Oftmals hat das SUT Bedarf an speziellen Schnittstellen für das Testen
Bei Hardware gibt es oft standardisierte Testschnittstellen, wie z.B. JTAG (Joint Test Action Group)
Das Testskript "hakt" sich an diese Test Hooks dran, d.h. es verwendet Test Hooks um bestimmte Testschritte auszuführen
Beachte: das Wort "Test Hook" wird von anderen in unterschiedlicher Bedeutung verwendet
Auch “Test” Schnittstelle genannt
Grad bis zu dem ein Testobjekt geändert wird, um es in Bezug auf seine Testbarkeit anzupassen.
Je mehr Änderungen am SUT vorgenommen werden müssen (für die automatisierte Testdurchführung), desto höher ist der Grad der Intrusion
dedizierte Test-/Softwareschnittstellen haben einen hohen Intrusionsgrad, Ul-Elemente einen geringeren Grad der Intrusion
verwenden der Hardwareelemente des SUT (z. B. Verdrahten der Tastaturen) ist ein noch höherer Grad der Intrusion
Nachteile der Intrusion:
Probe Effect : das Verhalten des SUT verändert sich (schlimmstenfalls entsteht ein Heisenbug: die Fehlerwirkung tritt nur auf, wenn wir die Testautomatisierung nicht verwenden.)
insbesondere das Echt-Zeit- und Performanz-Verhalten
kann zu falsch-positiven Ergebnissen (Fehlalarm) führen
Vorteil der Intrusion:
oft einfach zu realisierende Lösung
• Eine Person, die für die Planung und Überwachung der Neu- und Weiterentwicklung einer Testautomatisierungslösung verantwortlich ist.
Eine rudimentäre oder spezielle Implementierung einer Softwarekomponente, die verwendet wird, um eine noch nicht implementierte Komponente zu ersetzen bzw. zu simulieren.
Ein Testwerkzeug, das eine zu testende Komponente/ein System aufruft und/oder steuert.
Eine Darstellung der Ebenen, Komponenten und Schnittstellen einer Testautomationsarchitektur, die einen strukturierten und modularen Ansatz ermöglicht, um Testautomation umzusetzen.
Eine Instanziierung der generischen Testautomatisierungsarchitektur, um die Architektur einer Testautomatisierungslösung zu definieren, z.B. seine Schichten, Komponenten, Dienste und Schnittstellen.
Ein Werkzeug, das eine Umgebung zur Testautomatisierung bereitstellt. Es beinhaltet üblicherweise einen Testrahmen und Testbibliotheken.
Darstellung der
Schichten,
Komponenten,
und Schnittstellen
einer Testautomatisierungsarchitektur
und ermöglicht so einen
strukturierten
und modularen Ansatz
zur Implementierung der Testautomatisierung
Ein Testwerkzeug, das Tests gegen ein vorgesehenes Testelement ausführt, und die tatsächlichen Ergebnisse und Nachbedingungen gegen die erwarteten Werte vergleicht.
Ein Faktor, der zu negativen Konsequenzen in der Zukunft führen könnte, gewöhnlich ausgedrückt durch das Schadensausmaß und die Eintrittswahrscheinlichkeit.
Der Prozess, mit dem Entscheidungen getroffen und Schutzmaßnahmen umgesetzt werden, um das Risiko auf eine vorgegebene Stufe zu reduzieren oder um es auf einer Stufe zu halten.
Der Prozess der Begutachtung von identifizierten Risiken und der Festlegung der Risikostufe
Ein Risiko, das die Qualität eines Produktes beeinträchtigt.
Die Mess-Skala und das genutzte Verfahren einer Messung.
Aufwand, der benötigt wird, um die Ausführung von Tests manuell durchzuführen.
Der Grad, ausgedrückt in Prozent, zu dem bestimmte Überdeckungselemente behandelt oder durch eine Testsuite ausgeführt wurden.
Codeüberdeckung hilft beim Ermitteln von Code, der nicht durch Testfälle überdeckt wird
Eine Codeüberdeckung von 100 % ist lediglich in sehr einfachen Softwareanwendungen zu erzielen
Jedoch ist man sich einig, das eine höhere Überdeckung das Gesamtrisiko senkt
Codeüberdeckung ist auch auf höheren Teststufen möglich (z.B. die Codeüberdeckung des System-Regressionstests)
Die Aktivität, die ein Testprotokoll erstellt.
Sammlung und Analyse der Daten über Testaktivitäten und ihre anschließende Konsolidierung in einem Bericht, um die Stakeholder zu informieren.
Last changeda year ago