Fachliche Prozeduren

Wie eingangs bereits erwähnt stellen fachliche Prozeduren einen fachlichen Ablauf in Ihrer Anwendung dar. Das dazugehörige Beispiel finden Sie unter qftest-7.1.2/demo/keywords/simple_business/SimpleKeywords.qft. Der dazugehörige Testplan liegt unter qftest-7.1.2/demo/keywords/simple_business/simple_keywords.xlsx. Bitte achten Sie darauf, dass Sie den Ordner in ein projektspezifisches Verzeichnis kopieren und diese dort modifizieren.

Als Beispiel können wir uns den Testfall "Fahrzeug anlegen" für den CarConfigurator näher anschauen. Dieser Testfall besteht aus folgenden Schritten:

  1. Anwendung starten, wenn notwendig
  2. Fahrzeugdialog öffnen, unter Einstellungen -> Fahrzeuge
  3. Daten wie Name und Preis eingeben
  4. Auf Neu klicken, um das Fahrzeug anzulegen
  5. Auf OK klicken, um den Dialog zu schließen
  6. Die Anlage des Fahrzeuges prüfen

Wenden wir uns zuerst der Excel-Datei zu.

Abbildung 29.1:  Excel-Datei fachliche Schlüsselwörter

Nachdem QF-Test Excel-Dateien zeilenweise lesen kann, haben wir uns für diesen Aufbau entschieden. Dieses Einlesen folgt dem Datentreiber Konzept (siehe Abschnitt 40.4). Ein anderer Aufbau der Excel-Datei würde auch funktionieren. Der Vorteil des vorliegenden Beispiels ist, dass es ohne Skripte bzw. If-Abfragen auskommt.

In der ersten Zeile finden wir die Werte teststep, value1 und value2. Diese Zeile wird später von QF-Test als Variablennamen interpretiert werden, die pro Zeile in der Excel unterschiedliche Werte annehmen werden. Nun soll QF-Test also schrittweise durch diese Excel-Dateien gehen und die geplanten Testschritte durchführen.

Um dieses Ziel zu erreichen, schauen wir uns nun die QF-Test Datei SimpleKeywords.qft an. Diese Datei hat folgenden Aufbau:

Abbildung 29.2:  Testsuite fachliche Schlüsselwörter
KnotenZweck
Testfallsatz "Scenario" Bildet den äußeren Knoten für die Testausführung, kann theoretisch auch weggelassen werden.
Bezug auf Abhängigkeit dependencies.sutStarted Das Starten und Stoppen der Anwendung sollten Sie auch bei diesem Ansatz einer QF-Test Abhängigkeit überlassen, weil diese nicht nur eine intelligente Verwaltung hierfür bieten, sondern auch über Mittel verfügen, auf unerwartetes Verhalten zu reagieren, siehe Abschnitt 40.3.
Testfall "Create vehicle" Dieser Testfall stellt die Implementierung des Testfalles dar.
Testschritt "Walk through test steps" Dieser Knoten wird benötigt, um die Excel-Datei mittels Datentreiber Knotens einzulesen.
Datentreiber "steps from excel" Dieser Knoten wird die zeilenweise Wiederholung für die Daten aus der Excel-Datei sicherstellen.
Excel-Datei "steps from excel" Hier wird auf die Excel-Datei verwiesen.
Testschritt "Generic test step" Dieser Testschritt wird während der Ausführung mit den Namen der Testschritte aus Excel gefüllt, um einen lesbaren Report zu erzeugen.
Prozeduraufruf "business.$(teststep)" Hier wird der entsprechende Testschritt, welcher in der Excel-Datei definiert ist, aufgerufen. Die Variable teststep wird hierbei aufgrund des Datentreiber-Mechanismuses auf die Planungsdaten der Excel-Datei gesetzt.
Tabelle 29.5:  Aufbau von SimpleKeywords.qft

Die dafür benötigten Prozeduren sind im Package business implementiert. Damit Parameter dieser Prozeduren, die natürlich unterschiedlich sein können, in der Excel-Datei zusammengefasst werden können, werden die Excel-Parameter value1 bzw. value2 auf der jeweiligen Prozedur in die prozedurspezifischen Parameter umgewandelt.

Abbildung 29.3:  Prozedur fillDialog

Dieses Konzept erfordert also, dass die zu verwendenden Keywords bereits in QF-Test hinterlegt sind. Die Excel-Datei muss ggf. um mehrere Spalten für die Testdaten erweitert werden, falls Prozeduren mehr als zwei Parameter benötigen. Pro Testfall muss es noch einen Testfall in QF-Test geben. Dies können Sie allerdings auch flexibler gestalten. Eine Beschreibung hierzu finden Sie unter Abschnitt 29.5.