TestOffice - Keyword basierte Testautomatisierung

Veröffentlicht auf 11. Juni 2008

Moderne Anforderungen an das Testmanagement erfordern Unterstützung durch moderne Testwerkzeuge.

Bekannte Testmanagementsysteme bieten meist gute Möglichkeiten zur Planung und Verwaltung des Testprozesses und zur Auswertung der Daten.
Durch den Schritt hin zur Anbindung von Testautomatisierungswerkzeugen ist es möglich Testszenarios im Testmanagementsystem gezielt zusammenstellen und ausführen zu lassen. In der Gegenrichtung können die Testprotokolle und Ergebnisse wieder direkt übernommen werden. Gezielte Tests sind somit ohne großen Ressourceneinsatz in kürzester Zeit und über Nacht durchführbar, man kommt schnell zu zuverlässigen und reproduzierbaren Ergebnissen.

Der Nachteil von vielen Testmanagementsystemen besteht allerdings darin, dass man sich oft an gegebene Strukturen anpassen, sich mit den gegebenen Funktionen abfinden und notwendige Änderungen selbst zeit- und kostenintensiv von Fachleuten erledigen lassen muss. Die Automatisierung wird intern meist nur sporadisch durch eine standardisierte API unterstützt, die es erlaubt Tests zu starten, durch andere Anwendungen ausführen zu lassen und ein Ergebnis zurück übertragen zu bekommen.
Eine Bereitstellung von Testdaten, die Durchführung der Tests oder ein Verteilen auf mehrere Testumgebungen ist eigentlich nicht vorgesehen, Protokolle werden nicht gesichert und als Ergebnis muss ein "Test bestanden" reichen. Mit einer ordentliche Performance bei der Durchführung von mehreren tausend Testfällen darf erst gar nicht gerecht werden.

Testautomatisierungswerkzeuge durch ihre Fähigkeiten unterschieden.
Die einfachste Art von Testautomatisierung ist der Einsatz von Capture and Replay Werkzeugen für das Aufzeichnen und immer wieder abspielen von einfachen manuellen Tests.
Der große Nachteil daran ist, dass wenn sich etwas an der zu testenden Anwendung ändert, meist sämtliche Testfälle neu aufgezeichnet werden müssen oder nur mit großem Aufwand gerettet werden können.
Eine Anbindung an ein Testmanagementsystem oder an andere Systeme ist meist finanziell nicht lohnend.

Die nächste Stufe stellt die Skriptprogrammierung dar. Das Werkzeug stellt Funktionen und ein Mapping der Oberfläche der zu testenden Software bereit.
Der Tester hat nun die Möglichkeit die Test selber Schritt für Schritt abzubilden und über Schleifen und Verzweigungen, mehr Stabilität in die Tests zu bringen.
Die Skriptsprache vereinfacht die Anbindung an andere Systeme. Automatisierte Durchführung und Rückschreibung der Ergebnisse macht erstmals Sinn.

Um die Skripte besser warten zu können werden in der nächsten Stufe die Testdaten ausgelagert in einfacher zu verwaltende Strukturen.
Des Weiteren kann ein Testfall mit unterschiedlichen Testdaten laufen und somit die Testabdeckung ohne viel Aufwand verbessert werden.
Hier bietet sich an, die Testdaten in einem Versionsmanagement zu verwalten oder eventuell sogar direkt in das Testmanagementsystem einzubinden.

Da aber die Skriptprogrammierung immer noch viel Programmierkenntnisse und Testerfahrung bedarf, kann die Automatisierung durch Fachpersonal schnell teuer werden.
Damit wird Keyword basiertes Erstellen von Tests interessant. Einfache Tester ohne Programmiererfahrung können nun Tests erstellen, indem sie einfach auf von Fachpersonal vorgefertigte Schablonen zugreifen, die für jedermann verständlich sind.
Z.B. Klicke Button1, Eingabe in Textfeld3 MeinName, ...

Eine Software die diese kostengünstige und einfache Art der Testautomatisierung anbietet existiert bereits.

Die Firma SPIRIT Software Engineering GmbH entwickelt seit Jahren in Zusammenarbeit mit Kunden der Tesnet Group GmbH eine Software namens
 

"TestOffice"


die im Praxiseinsatz entwickelt wurde und sich ganz nach den Wünschen und den Anforderungen der Kunden richtet.

TestOffice ging allerdings den umgekehrten Weg wie viele andere Tools. Es bot erst die Möglichkeit der einfachen vernetzten Automatisierung und entwickelte danach Testmanagementfähigkeiten.

Im Bereich Testautomatisierung können zahlreiche Werkzeuge bekannter Hersteller eingebunden werden.
Testfälle können in TestOffice durch einen Test-Case-Description-Language Editor Schritt für Schritt beschrieben werden. Wenn nötig können die Testfälle sogar übersetzt werden und weltweit von verschiedensprachigen Mitarbeitern bearbeitet werden.
Die Automatisierung geschieht im Hintergrund, indem für jede Anweisung z.B. eine Aktion eines Automatisierungswerkzeuges definiert wurde. Somit können schon vor der eigentlichen Entwicklung der Software oder des Test Frameworks Tests erstellt werden und selbst Tester ohne technischen Hintergrund an der Automation mitarbeiten.

Im Testmanagementbereich bietet TestOffice bisher die Verwaltung von Anforderungen, die Testfallverwaltung und alle Bereiche welche die Automatisierung betreffen ab.
Durch ein hohes Maß an Flexibilität können über die Administrations-Oberfläche Strukturen, Eingabefelder oder Attribute je nach Wunsch entsprechend den Praxisanforderungen beliebig angelegt oder wieder entfernt werden.
Zu anderer Software für Anforderungsdefinition, Testautomatisierung oder Defectmanagement gibt es bereits zahlreiche Schnittstellen, man kann sich also sein Wunsch-Test-Framework beliebig zusammenstellen.

Neben Funktionstest können aber auch Performanztest mit TestOffice durchgeführt werden.
Dafür bietet TestOffice zahlreiche Erweiterungsmodule, mit denen zusätzliche Funktionen bereitgestellt werden.

Wer genauere Informationen über TestOffice erhalten möchte kann unter http://www.testoffice.de weiter lesen.
Neue Funktionen und geplante Erweiterungen können unter http://blog.testoffice.de verfolgt werden.

Geschrieben von Robert Bullinger

Veröffentlicht in #Testmanagement

Kommentiere diesen Post