3.0+19
Anbindung an Testmanagementtools
19.1
Einführung

QF-Test bietet einige pragmatische Ansätze um Testfälle zu verwalten. Sie können eine Übersicht über alle Testfälle generieren oder auch Testfälle in QF-Test dokumentieren. In größeren Projekten allerdings könnte es Bedarf für ein eigenes Testverwaltungssystem geben, um z.B. den Entwicklungsstatus der einzelnen Tests zu sehen oder die Tests bzw. Ergebnisse mit Anforderungen oder Use-Cases zu verbinden. Neben der Testplanung und Testergebnisverwaltung könnte auch ein eigenes Testausführungssystem im Einsatz sein, welches z.B. die Auslastung der Testsysteme während verschiedener Testläufe überwacht.

QF-Test bietet nicht so viele Möglichkeiten wie dererlei spezialisierte Werkzeuge, jedoch verbessert es sich von Version zu Version. Die Integration von QF-Test in ein solches Testverwaltungssystem ist mittels dem Batch-Modus oder den Daemon Modus sehr einfach. Für mehr Informationen über Batch bzw. Daemon Modus, siehe Kapitel 16.

Dei folgenden Kapitel beschreiben einige Musterlösungen, welche wir für etablierte Testverwaltungssysteme liefern. Wenn Sie das Testverwaltungssystem, welches Sie im Einsatz haben, nicht finden können, kontaktieren Sie bitte uns oder unsere Mailingliste, um Hinweise und Tipps für eine mögliche Integration zu bekommen.

19.2
HP TestDirector for Quality Center
19.2.1
Einführung

Die aktuelle Integration von QF-Test und HP TestDirector for Quality Center baut auf dem von Quality Center gelieferten VAPI-XP Testtyp auf. Dieser Testtyp ist für den Aufruf von automatisierten Testskripten gedacht. Eine Vorlage für ein VAPI-XP Skript, welches QF-Test an Quality Center anbindet, finden Sie in der Datei qcVapiXPTemplate.txt im QF-Test Installationsverzeichnis, siehe qftest-3.4.7/ext/qualitycenter. Diese Vorlage kann für alle QF-Test Tests, welche in Quality Center aufgerufen werden, benutzt werden. Eine detaillierte Schritt-für-Schritt Anleitung dazu finden Sie in Abschnitt 19.2.2.

Die QF-Test Vorlage für das VAPI-XP Skript benutzt ein externes VBScript Skript qcTemplate.vbs, welches die Ausführung der Tests übernimmt. Dieses Skript ist ebenfalls Bestandteil des Lieferumfangs von QF-Test (siehe qftest-3.4.7/ext/qualitycenter). Je nach Bedarf sollten Sie dieses Skript anpassen und in ein projektspezifisches Verzeichnis kopieren.

Der VAPI-XP Test in Quality Center startet QF-Test im Batchmodus lokal auf jedem einzelnen Testsystem. Dies bedeutet also, dass das externe Skript auf jedem Testsystem verfügbar bzw. erreichbar sein muss und entsprechend müssen auch die Testsuitedateien auf jedem Testsystem verfügbar sein, weshalb wir empfehlen, diese Dateien auf ein gemeinsames Netzlaufwerk zu legen bzw. in Ihr Versionsmanagementsystem aufnehmen.

Nach Ausführung des Tests wird das QF-Test Protokoll als Anhang zur Testinstanz hochgeladen und auch der Status des Tests entsprechend gesetzt.

Sie können das externe Skript auch dahingehend ändern, dass anstatt des Batchmodus ein Daemonaufruf (siehe Kapitel 40) stattfindet. In diesem Fall baut QF-Test die Verbindung zum Testsystem auf und nicht mehr Quality Center. Im Falle des normalen Batchaufrufes baut Quality Center die Netzwerkverbindung auf und ruft dann lokal QF-Test auf. Wenn Sie den Daemonaufruf benutzen wollen, dann muss sich das externe Skript auf dem Rechner, auf dem Quality Center installiert ist befinden, jedoch müssen die Testsuitedateien weiterhin auf jedem einzelnen Testsystem erreichbar sein.

Falls Sie eine andere unterstützte Skriptsprache als VBScript, z.B. JScript, in Ihrem Projekt einsetzen sollten, können Sie die QF-Test Vorlagen natürlich in diese Skriptsprache portieren.

In der folgenden Abbildung sehen Sie das VAPI-XP Skript in Quality Center:

MercuryQFS
Abbildung 19.1:  QF-Test VAPI-XP Skript in HP QualityCenter

19.2.2
Schritt für Schritt Anleitung

Führen Sie auf den Testsystemen folgende Schritte aus:

Folgende Schritte müssen in Quality Center ausgeführt werden:

Bitte beachten Sie auch die Kommentare in den QF-Test Vorlagen, in denen Sie Hinweise zu weiteren Einstellungsoptionen finden.

19.3
Imbus TestBench
19.3.1
Einführung

Die aktuelle Integration von QF-Test und der TestBench der Firma Imbus besteht aus zwei Teilen:

Sie finden eine Testsuite für die Ausführung der TestBench Szenarien unter qftest-3.4.7/ext/testbench/testbench.qft.

Das folgende Kapitel gibt einen Überblick über das Konzept der Integration.

19.3.2
Generieren von QF-Test Vorlage-Testsuiten aus den Interaktionen

Nachdem Sie den Testfall in der TestBench geplant und die entsprechenden Interaktionen angelegt haben, können Sie mittels des QF-Test Export Plug-ins eine QF-Test Datei generieren. Imbus liefert die erforderlichen Informationen, wie Sie dieses Plugin einspielen müssen.

In dieser QF-Test Datei finden Sie alle Interaktionen als Prozeduren. Ihre Struktur wird durch Packages abgebildet. Nun können Sie mit der Aufnahme der einzelnen Interaktionen beginnen und die Prozeduren mit Leben füllen.

Nach Fertigstellung der Aufnahme speichern Sie diese Testsuite in einem projektspezifischen Ordner ab. Diese Datei muss später bei der Ausführung in der Ausführungstestsuite inkludiert werden, um so die Interaktionen ausführen zu können. Wir empfehlen diese Datei entweder in das Versionsmanagementsystem mitaufzunehmen oder auf ein Netzlaufwerk zu legen.

19.3.3
Importieren der Resultate

Die Tests werden über eine spezielle Ausführungstestsuite ausgeführt. Diese Suite kann die iTEP Export Dateien der TestBench lesen. Diese Ausführungstestsuite muss die vorher erstellte Interaktionen-Testsuite inkludieren (siehe auch Abschnitt 19.3.2).

Sie finden eine Testsuite für die Ausführung der TestBench Szenarien unter qftest-3.4.7/ext/testbench/testbench.qft.

Nun wählen Sie in der TestBench die auszuführenden Testfallsätze aus und exportieren diese mittels des iTEP Export Plug-ins.

Nachdem der Export erfolgt ist, können Sie die Ausführungstestsuite starten. Sie können das iTEP Export Verzeichnis und auch das Zielverzeichnis für die einzelnen QF-Test Protokolle sowie die iTEP Ergebnisse als Variablen definieren und entsprechend angeben. QF-Test wird nun für jeden einzelnen Testfall ein Protokoll erzeugen und als Abschluss nochmal ein umfassendes Protokoll, welches die gesamte Ausführung beinhaltet.

Nach der Testausführung können Sie die gesamten Ergebnisse in die TestBench importieren. Verwenden Sie dazu das iTEP bzw. das iTORX Import Plug-in. Die einzelnen QF-Test Protokolle werden zusätzlich an die Testinstanzen angehängt.

19.4
TestLink
19.4.1
Einführung

Die aktuelle Integration von QF-Test und dem Opensource Tool TestLink besteht aus zwei Teilen:

Bis jetzt wird für die Integration direkt auf die Datenbank von TestLink zugegriffen. Diese Technik erfordert einen JDBC Datenbanktreiber, damit die mitgelieferten Skripte verwendet werden können. Die Datenbanktreiber finden Sie auf den Internetseiten der jeweiligen Datenbankhersteller und können diese dort auch herunterladen. Für TestLink wird gerade eine eigene Erweiterungs-API implementiert; sobald diese API einen stabilen und ausreichenden Zustand erreicht hat, wird die Integration an diese API angepasst, so dass danach kein direkter Datenbankzugriff mehr erfolgen muss.

Das Exportieren der geplanten Testfälle, mitsamt Testschritten, aus TestLink unterstützt den Testautomatisierer den Testfall wie geplant zu implementieren.

Das Importieren der Testresulate nach TestLink erlaubt eine bessere Übersicht über die ausgeführten automatischen und manuellen Tests mit einem Werkzeug.

Hinweis Testresultate können Sie auch unabhängig vom Export von QF-Test in TestLink importieren, hierfür sollten Sie allerdings beachten, dass im Namen der Testfälle in QF-Test immer die ID des Testfalles von Testlink im Namen steht. Ein Testfall sollte nach folgendem Schema benannt werden: <TestLink-ID>: Name des Testfalles.

19.4.2
Generieren von QF-Test Vorlagen-Testsuiten aus den Testfällen

Um eine einheitliche Struktur von automatisierten Testfällen in QF-Test und der Testplanung in TestLink zu gewährleisten, bietet QF-Test die Möglichkeit, Testsuite Dateien mit derselben Struktur wie innerhalb eines Testprojektes von TestLink zu generieren.

In dieser QF-Test Datei finden Sie einen 'Testfall' Knoten pro Testfall und einen 'Testfallsatz' Knoten pro Testsuite aus TestLink. Falls Sie die Felder "Auszuführende Schritte" und "Erwartetes Resultat" eines Testfalles ausgefüllt haben, wird auch ein leerer 'Testschritt' pro auszuführenden Schritt in den jeweiligen Testfällen angelegt. Das erwartete Resultate finden Sie im 'Bemerkung' Attribut des 'Testschritt' Knotens.

Diese Vorlagen-Testsuite muss der Testautomatisierer nun mit entsprechenden Leben füllen, in-dem er die erstellten 'Testschritte' mit den benötigten Prozeduraufrufen und Aufzeichnungen füllt.

Falls Sie Testfälle aus TestLink exportieren möchten, führen Sie bitte folgende Schritte durch:

  1. Kopieren Sie das Verzeichnis qftest-3.4.7/ext/testlink/export in einen projektspezifischen Ordner.
  2. Öffnen Sie dort das Startskript, welches Sie verwenden möchten, mit einem Texteditor, d.h. exportTestLinkToQFT.bat für Windows bzw. exportTestLinkToQFT.sh für Unix.
  3. Passen Sie dort die Pfade für die Variablen JAVA, QFTDIR und TESTLINKINTEGRATOR an.
  4. Öffnen Sie nun die Datei TestLinkDBIntegrator.py mit einem Texteditor.
  5. Passen Sie dort die Variablen dbdriver, conncetionstr, dbuser und dbpass entsprechend Ihrer Datenbank an.
  6. Falls Sie benutzerdefinierte Felder aus TestLink in den Export mit einbeziehen wollen, passen Sie auch die Variable custom_fields an.
  7. Rufen Sie nun das angepasste Exportskript, wie im Beispiel unten, auf.
exportTestLinkToQFT.bat --testproject projectname --targetsuite /path/to/testsuite.qft
Beispiel 19.1:  Beispielaufruf für das Exportieren von Testfällen
19.4.3
Ausführung der Testfälle

Die Ausführung der Testfälle kann wie gewohnt stattfinden. Sie sollten allerdings einen XML-Report erstellen, wenn Sie die Resultate nach TestLink laden wollen. Wichtig ist hierfür der Parameter '-report.xml' bei der Testausführung. Beim Erstellen des Reports über das GUI sollte die Checkbox 'XML Report erstellen' angehakt sein.

Hinweis Falls Sie Ihre Testfälle nicht aus TestLink exportiert haben, sollten Sie die TestLink-ID in die Namen der QF-Test Testfälle mitaufnehmen. Ein Testfall sollte nach folgendem Schema benannt werden: <TestLink-ID>: Name des Testfalles.

qftest -batch -report.xml reportFolder testsuite.qft
Beispiel 19.2:  Beispielausführung um XML-Reports zu erzeugen
19.4.4
Importieren der QF-Test Resultate nach TestLink

Nach Erstellen der XML-Reportdatei können Sie diese Resultate nun nach TestLink hochladen.

Es wird für jede Ausführung ein neuer Build in TestLink angelegt. Die TestLink-Buildnummer wird aus der Run-Id des Reports gebildet. Diese können Sie bei Bedarf mit der Option '-runid' bei der Testausführung überschreiben.

Falls Sie QF-Test Testresultate nach TestLink importieren möchten, führen Sie bitte folgende Schritte durch:

  1. Kopieren Sie das Verzeichnis qftest-3.4.7/ext/testlink/import in einen projektspezifischen Ordner.
  2. Öffnen Sie das Startskript, welches Sie verwenden möchten, mit einem Texteditor, d.h. importToTestLink.bat für Windows bzw. importToTestLink.sh für Unix.
  3. Passen Sie dort die Pfade für die Variablen JAVA, QFTDIR und TESTLINKINTEGRATOR an.
  4. Öffnen Sie nun die Datei ReportParser.py mit einem Texteditor.
  5. Passen Sie dort die Variablen dbdriver, conncetionstr, dbuser und dbpass entsprechend Ihrer Datenbank an.
  6. Erstellen Sie bei der Ausführung der QF-Test Tests einen XML-Report mit dem Parameter '-report.xml' und wahlweise auch mit einer eigenen Run-ID mit der Option '-runid'.
  7. Führen Sie das angepasste Importskript, wie im unten stehenden Beispiel, aus.
importToTestLink.bat --testproject projectname --resultfile qftestReport.xml --testplan testplanname --tester tester
Beispiel 19.3:  Importieren der Resultate