Testroboter

Testroboter

Testroboter werden in der Softwarequalitätssicherung auch als Capture & Replay- bzw. Capture & Playback Tools bezeichnet. Dabei zeichnet das Werkzeug alle vom Tester manuell durchgeführten Bedienschritte, wie zum Beispiel Tastatureingaben oder Mausklicks, während einer Testsitzung auf. Diese Bedienschritte werden vom Werkzeug in einem Testscript gespeichert. Danach kann der aufgezeichnete Testfall vom Tester automatisch wiederholt abgespielt werden.

Testautomatisierungsarchitektur

Bei größeren Projekten werden auf diese Art und Weise sehr viele Testscripts erstellt. Für die Erstellung und Wartung einer großen Anzahl von Testscripts muss daher eine geeignete Strukturierung der Testskripts durchgeführt werden. Außerdem unterstützt eine gute Strukturierung die Arbeitsteilung zwischen Testautomatisierern und Fach-Testern.

Bei der datengetriebenen Testautomatisierungsarchitektur (data-driven test) steht die Trennung von Testdaten und den Testscripts im Vordergrund. Dabei werden die Testdatensätze in ein Tabellenkalkulationsblatt oder in eine Datenbank ausgelagert. Die Test-Sollergebnisse sind ebenfalls in der Datenbank gespeichert. Das Testskript liest die einzelnen Zeilen ein und führt die Testprozedur mit diesen Datensätzen durch. Werden zusätzliche Testfälle benötigt, werden sie vom Fach-Tester in der Datenbank bzw. im Tabellenkalkulationsblatt hinzugefügt.

Besteht die Anforderung, einzelne Teile der Testskripts in eine Prozedur zu kapseln, um so eine Wiederverwendung in anderen Testskripts zu ermöglichen, muss der Testroboter kommando- bzw. schlüsselwortgetriebenes Testen (key-word-/actionword-driven test) unterstützen. Auch hier werden die gekapselten Prozeduren in der Regel vom Testskript getrennt und in eine Datenbank ausgelagert. Der Fachtester stellt aus den einzelnen Prozeduren das Testskript zusammen und benötigt somit keine Programmierkenntnisse.

Interaktionsgetriebene Testroboter der neuesten Generation kombinieren die datengetriebenen und die komponentengetriebenen Ansätze. Sie bieten eine datenbankgestützte, objektorientierte Testbausteinverwaltung, mit der Testbausteine per Drag & Drop aus dem Datenbank-Repository geholt und zu einer neuen Testsequenz zusammengestellt werden können. Dabei werden auch die dazugehörigen Testdaten automatisch in die Testsequenz mitgenommen. Muss eine Änderung in Testfällen, die denselben Baustein inkludieren, vorgenommen werden, geschieht dies zentral an einer Stelle innerhalb des Bausteins. Dies minimiert den Wartungsaufwand und große Repositories können effizient und übersichtlich genutzt werden.

Aktuelle Testroboter

Am Markt stehen eine Reihe von Testrobotern zur Verfügung. Ihr Umfang bezüglich ihrer Funktionalität variiert jedoch sehr stark. Einige Werkzeuge sind reine Testroboter. Bei anderen wiederum ist die Roboterfunktion nur ein Teil ihrer Gesamtfunktionalität.

  • Selenium: Selenium ist ein Open Source Testframework zur Durchführung funktionsorientierter Tests von Webapplikationen.
  • CitraTest: CitraTest ist eine Lösung der Firma Tevron. CitraTest ist ein Testroboter, der für Funktions- und Lasttests als auch zum End-to-End Monitoring (auch unter Terminalservices wie z.B. Citrix) eingesetzt werden kann.
  • JStudio SiteWalker: JStudio SiteWalker ist ein Testwerkzeug für webbasierte Anwendungen zur Durchführung von automatisierten funktionsorientierten Tests.
  • IBM Rational Robot: Rational Robot von IBM ist ein Testroboter zur Durchführung von Funktions-, Rückfall- und Konfigurationstests für .NET-, Java-, Web- und andere GUI-basierte Anwendungen.
  • TestPartner: TestPartner wurde ursprünglich von der Firma Compuware entwickelt und wird zurzeit von der Firma Micro Focus vertrieben. Bei TestPartner werden zwei verschiedene Modi zur Erstellung von Testfällen angeboten. Mit Visual Test wird ein Storyboard-basierter Ansatz verwendet und mit Test Script werden die Testfälle mit Hilfe eines VBA Codes generiert.
  • HP QuickTest Professional: HP QickTest Professional ist der aktuelle Testroboter von der Firma HP. Er ersetzt den Testroboter der bislang unter WinRunner vertrieben wurde. Der vollständige Support von WinRunner wird am 1. August 2009 eingestellt. Ein eingeschränkter Support ist bis zum 1. Januar 2011 limitiert. Von der Firma HP wird eine Migration der Testfälle von WinRunner auf HP QuickTest Professional angeboten.
  • Borland SilkTest: Die Firma Borland bietet mit SilkTest eine umfangreiche Lösung zum Testen der Softwarefunktionalitäten von Anwendungen, die über eine grafische Benutzeroberfläche gesteuert werden, an.
  • QF-Test: Mit dem Tool QF-Test der Firma Quality First Software lassen sich u. a. via Capture / Replay Aufzeichnungen zur Automatisierung von Java und Web GUI Funktions-, Regressions- und Lasttests durchführen.
  • Watij: Bei Watij (Web Application Testing in Java) handelt es sich um ein Open-Source-Framework in Java. Es besitzt weder eine grafische Bedienoberfläche noch wird Capture & Replay unterstützt. Die Tests müssen manuell codiert und danach compiliert werden.
  • Yawet: Yawet ist ein Testroboter von der Firma InforMatrix GmbH. Das Werkzeug ist sehr einfach gehalten und unterstützt daher nur grundlegende Funktionalitäten.
  • Badboy: Badboy ist eine von der Firma Badboy Software entwickelte, schlanke Capture & Replay Testsoftware. Da sie einen eignen Browser zur Ausführung der Testfälle besitzt, kann keine Browserkompatibilität garantiert werden.
  • eValid: eValid von der Firma Software Research, Inc. unterstützt nur Tests mittels Microsoft Internet Explorer, da es in den installierten Internet Explorer integriert wird. Daher können auch alle Funktionen, die der Internet Explorer bietet, genützt werden.
  • QA Wizard Pro: Die Firma Seapine Software bietet in ihrem Portfolio unter anderem dem QA Wizzard Pro für Funktions- und Regressionstests an. Da sie weitere Produkte im Test-Lifecycle anbietet, können Daten aus anderen Produkten in den Testfällen wiederverwendet werden.
  • Test4Q: Test4Q ist ein Host-orientiertes Capture-/Replay Tool, das speziell CICS-Transaktionen verarbeiten kann. Eine Fülle weiterer Funktionalitäten – auch für den Batchablauf – stehen ebenfalls zur Verfügung. Unter bestimmten Voraussetzungen ist auch eine (Teil)automatisierung zur Erstellung der Testscripte (ohne eine vorherige Aufzeichnung) möglich.

Literatur

  • Andreas Spiller, Tilo Linz: Basiswissen Softwaretest, Aus- und Weiterbildung zum Certified Tester. 1. Auflage. dpunkt.Verlag, Heidelberg 2003, ISBN 3-89864-178-3.

Wikimedia Foundation.

Игры ⚽ Нужно сделать НИР?

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”