Versionen im Vergleich

Schlüssel

  • Diese Zeile wurde hinzugefügt.
  • Diese Zeile wurde entfernt.
  • Formatierung wurde geändert.

Testkonzept - Testfallautomatisierung

Image Modified

Testautomatisierung steht für die Entlastung der Tester von manuell durchzuführenden Testaktivitäten. Dies kann einerseits die automatisierte Eingabe von Daten sein, die zur Abarbeitung eines Testfalles notwendig sind oder auch die vollautomatisierte Abarbeitung von mehreren Testfällen.

...

Aus organisatorischer Sicht ist es notwendig, dass für automatisierte Tests eine separate Benutzerkennung genutzt und protokolliert wird.

Unter Testautomatisierung ist die Verwendung eines Softwarewerkzeuges unter definierten Vorbedingungen zur maschinellen Durchführung oder Steuerung von Testaktivitäten zu verstehen und diese anschließend danach mit den erwarteten Testergebnissen zu vergleichen (Soll/Ist-Vergleich).

Eine Durchführung von automatisierten Tests kann prinzipiell parallel in derselben Testumgebung durchgeführt werden, in der auch manuelle Tests durchgeführt werden.

...

Für eine Testfallautomatisierung ist es weniger wichtig, dass möglichst viele Varianten des gleichen Workflows mit unterschiedlichen Daten beschrieben werden sondern vielmehr eine Beschreibung von unterschiedlichen Workflows. Die Ausführung von Tests mit verschiedenen Daten sollte von daher erst bei der Zusammenstellung der Testfälle beschrieben werden.

Die folgenden Aktivitäten können grundsätzlich toolunterstützt durchgeführt werden

» Testfallerstellung

» Testdatenerstellung

» Testskripterstellung

» Testdurchführung

» Testauswertung

» Testdokumentation

Exkurs Regressionstest

Unter einem Regressionstest versteht man die Wiederholung von Testfällen, um Auswirkungen von technischen Anpassungen (Pflege, Änderungen, Erweiterungen und Korrekturen in bereits getesteten Bereichen einer Software zu prüfen.

Initialaufwand einer Testfallautomation

Methodische Testfallermittlung

Applikationsanalyse

Erstellung Datenbankmodell/ Regelmatrix

Abstimmungen mit Fachbereich(en)

Definition und Koordination Vertragsdatenbereitstellung

Testautomation

Konzeption Testautomation mit zentraler Testdatenhaltung

Erstellung Testskript / Framework zur Testdatensteuerung

Ergebnisverifikation

Regressionstest

Workflow einer Testautomatisierung - Aufgabenverteilung

...

Kriterien zur Auswahl von zu automatisierenden Testfällen

Kriterium

Beschreibung

Stabilität Testobjekte

Eine Automatisierung ist wirtschaftlich und aus Testsicht nur in den Systemteilen sinnvoll, die eine hohe Anwendungsreife (d.h. es werden keine großen Systemänderungen erwartet) sinnvoll.

Release Planung

Für Funktionen, die in einem kommenden Release entfernt oder umfangreicher geändert werden sollen, lohnt sich unter dem Aspekt einer Return-Of-Invest (ROI) eine Testfallautomatisierung nicht.

Testdaten

Testdaten müssen ausschließlich einem automatisierten Test zugeordnet werden können. Eine Störung durch parallele Nutzung der Testdaten im manuellen Test muss daher durch geeignete Maßnahmen verhindert werden können.

Testumgebung

Eine automatisierte Ausführung von ausgewählten Tests erfordert die Verfügbarkeit einer geeigneten Testumgebung.

Testfokus

Testfallautomatisierungen sind insbesondere für Funktionstest oder Funktionskettentest - mit Einschränkungen auch für einen User Acceptance Test - geeignet.

Drittsysteme

In Drittsystemen werden oft eigene Daten vorgehalten. Dadurch wird es erschwert, dass über alle Systeme konsistente Daten für eine Testfallautomatisierung zur Verfügung stehen können.

 

Von daher sind die Testfälle für eine Testfallautomatisierung so auszuwählen, dass die Anzahl der notwendigen Drittsysteme möglichst gering gehalten wird.

Testfallermittlung

Methodisch ermittelte Testfälle eignen sich (aufgrund einer allgemein höheren Qualität) grundsätzlich eher zur Testfallautomatisierung als intuitiv ermittelte Testfälle.

 

Dennoch kann es vorkommen, dass auch intuitiv ermittelte Testfälle von sehr guter Qualität sind und sich damit auch für eine Testfallautomatisierung eignen.

Manuelle Ausführung

Um eine Reife für eine Testfallautomatisierung nachzuweisen, muss ein Testfall bereits manuell erfolgreich getestet worden sein.

 

In diesem Zusammenhang sollte eine Risikoanalyse durchgeführt werden. Bevorzugt sind die Testfälle zur Automatisierung auszuwählen, die bei hoher Kritikalität eine möglichst niedrige Komplexität (Komplexitätsbewertung) aufweisen.

Genauigkeit der

Testfallbeschreibung

Eingabeparameter und erwartete Ergebnisse von Testfällen, deren Testfalldurchführung automatisiert werden soll, sind so genau zu beschreiben, dass eine fachfremde Person ohne Fachwissen die Testfälle ausführen könnte.

 

Je höhere die Detaillierung von Testfallbeschreibungen ist, umso mehr wird die Testfallautomatisierung erleichtert.