Effiziente Arbeitstechniken

Dieses Kapitel beschreibt hilfreiche Arbeitstechniken, um unnötigen Mehraufwand beim Arbeiten mit QF-Test zu vermeiden.

3.5+37.1
Arbeiten mit QF-Test Projekten

Im vorigen Kapitel wurde die Erstellung von mehreren Testsuiten beschrieben. Wie Sie sich sicher vorstellen können, werden sich während der Entwicklung einige Testsuiten ansammeln. Um hier einen besseren Überblick über die bestehenden Suiten zu bekommen, sollten Sie ein QF-Test Projekt erstellen.

QF-Test Projekte ermöglichen Ihnen eine sehr gute Übersicht über die involvierten Testsuiten. Des Weiteren sind Projekte auch dafür zuständig, Änderungen an Testsuiten bei Bedarf an aufrufende Testsuiten automatisch weiterzugeben. Nähere Informationen hierzu finden Sie unter Kapitel 9.

Erstellung von Testsuiten

Im vorigen Kapitel wurde die Erstellung von wartbaren Testsuiten mittels Prozeduren und Variablen in QF-Test beschrieben. Normalerweise beginnen Anwender damit, sehr lange Sequenzen aufzuzeichnen und diese dann in kleinere Bereiche und später dann in Prozeduren aufzuteilen. Allerdings ist dieses Aufteilen manchmal ziemlich schwierig und zeitaufwendig, weil Sie die gesamte Sequenz durchgehen und entsprechende Grenzen finden müssen. Ein weiterer Nachteil ist, dass Sie nicht sofort erkennen, welche Schritte Sie bereits in bestehenden Testfällen oder Prozeduren erstellt haben.

Stattdessen empfehlen wir, Tests und deren Schritte im Voraus zu planen. Diese Planung sollte auch die verwendeten und benötigten Prozeduren umfassen. Damit können Sie dann Prozedur für Prozedur einzeln aufzeichnen. Wir kamen zum Schluss, dass eine vorausschauende Aufzeichnung, besonders für größere Teams, sehr hilfreich ist. Ein typischer Workflow für die Testerstellung könnte in etwa so aussehen:

  1. Zuerst planen Sie die benötigten Prozeduren.
  2. Planen Sie auch die benötigte Packagestruktur.
  3. Zeichnen Sie jede Prozedur als separate Sequenz auf.
  4. Benennen Sie die aufgezeichnete Sequenz so um, wie die Prozedur heißen würde.
  5. Konvertieren Sie diese Sequenz nun in eine 'Prozedur', mittels der »Knoten konvertieren« Aktion aus dem Kontextmenü.
  6. Schieben Sie die 'Prozedur' nun an die entsprechende Stelle unter 'Prozeduren'.
  7. Ersetzen Sie Testdaten durch Variablen. Dies können Sie entweder manuell oder automatisch (siehe Abschnitt 8.5.4 erledigen.
  8. Legen Sie die benötigten Variablen im 'Variablendefinitionen' Attribut des 'Prozedur' Knotens an. Eventuell können Sie auch Standardwerte vergeben.
  9. Beschreiben Sie die Prozedur im 'Bemerkung' Attribut, siehe Abschnitt 8.7.

Ein alternativer Ansatz zur Erstellung von Prozeduren kann deren automatische Erstellung sein. Dieses Konzept ist im Kapitel 26 beschrieben.

Die Standardbibliothek qfs.qft

QF-Test liefert eine Standardbibliothek qfs.qft aus, die in jeder Testsuite inkludiert ist.

Diese Suite enthält viele hilfreiche Prozeduren, um auf Komponenten, Datenbanken oder das Dateisystem zuzugreifen. Bitte werfen Sie immer einen Blick in diese Testsuite, bevor Sie etwas selber versuchen zu lösen, was eventuell schon einmal von uns gelöst wurde.

Ablage von Komponenten

QF-Test zeichnet jede neue Komponente in der Testsuite auf, in der die Aufzeichnung gestoppt wurde, deshalb könnte es passieren, dass Komponenten in einer falschen Testsuite abgelegt werden.

Wenn Sie nun diese Komponenten in eine andere Testsuite verschieben wollen, sollten Sie dies immer mit der Menüaktion »Datei«-»Importieren« der Zieltestsuite ausführen. Stellen Sie sicher, dass beide Testsuiten zum selben Projekt gehören, oder dass Sie hierfür ein korrektes ''Inkludierte Dateien''/''Abhängige Dateien'' Verhältnis zwischen den beiden Testsuiten erstellt haben. Der dazugehörige Arbeitsablauf ist detailliert im Abschnitt 25.2 beschrieben.

3.1+ Um Ihre Komponentenstruktur sauber zu halten, können Sie zuerst die Testsuite in sich selbst importieren. Danach können Sie den 'Fenster und Komponenten' Knoten selektieren und nach einem Rechtsklick die Menüaktion »Ungenutzte Komponenten markieren...« auswählen. Sie bekommen nun eine Liste aller Komponenten, die nicht im Projekt verwendet werden. Wenn Sie sich sicher sind, dass diese Komponenten gelöscht werden können, selektieren Sie im Kontextmenü des 'Fenster und Komponenten' Knoten den Eintrag »Ungenutzte Komponenten entfernen«.

Hinweis Sobald eine Komponente Informationen im Kommentarfeld enthält wird diese als "genutzt" betrachtet, selbst wenn es keine direkten Referenzen auf die Komponenten gibt.

Erweitern von Testsuiten

Sie können bestehende Testsuiten auf unterschiedliche Arten erweitern:

  1. Sie zeichnen einfach die neuen Schritte in der Testsuite direkt auf.
  2. Sie arbeiten mit einer Erweiterungssuite wie im Kapitel 25 beschrieben.

Wenn Sie Erweiterungen direkt in einer Testsuite vornehmen, indem Sie in der entsprechenden Testsuite auf 'Aufnahme stoppen' klicken, dann müssen Sie darauf achten, dass die Komponenten eventuell in einer anderen Hierarchie aufgezeichnet werden könnten. Das kann passieren, wenn Sie die aufgezeichnete Komponentenhierarchie unter 'Fenster und Komponenten' verändert haben. Des Weiteren kann das Verschieben von einzelnen Komponenten schwierig werden.

Wenn Sie mit einer Erweiterungssuite arbeiten und darin neue Testschritte erstellt haben, können Sie die aufgezeichneten Komponenten und erstellten Prozeduren und Tests auf einmal in die eigentliche Testsuite importieren.

Für die Erweiterung von Testsuiten auf Ebene 1 (wie beschrieben im Abschnitt 36.4) könnte daher wie folgt aussehen:

  1. Erstellen Sie eine neue Testsuite.
  2. Fügen Sie die zu erweiternde Testsuite zum 'Inkludierte Dateien' Bereich der neuen Testsuite hinzu.
  3. Speichern Sie die neue Testsuite.
  4. Stellen Sie sicher, dass beide Testsuiten zum selben Projekt gehören oder fügen Sie die neue Testsuite zum 'Abhängige Dateien' Bereich der zu erweiternden Testsuite hinzu.
  5. Zeichnen Sie neue Testschritte in der Entwicklungssuite auf. Erstellen Sie auch sofort die 'Prozeduren', sofern benötigt.
  6. Jetzt importieren Sie die Komponenten, Prozeduren und Testfälle in die Zieltestsuite wie im Abschnitt 37.4 und Abschnitt 25.3 beschrieben.

Eine detailliertere Beschreibung, wie man mit mehreren Testsuiten arbeitet, finden Sie im Kapitel 25.

Arbeiten mit dem Skripteditor

Der Skripteditor von QF-Test enthält einige nette Möglichkeiten, um Ihnen Tipparbeit zu ersparen.

Wenn Sie Methoden des Runcontexts rc aufrufen wollen, dann tippen Sie einfach rc. und drücken danach [Strg-Leertaste]. Jetzt bekommen Sie eine Liste aller unterstützten Methoden.

Diese automatische Vervollständigung funktioniert für folgende Variablen:

VariablenMethoden
doc Methoden von DocumentNode.
frame Methoden von FrameNode.
iw Methoden von ImageWrapper.
node Methoden von DOMNode.
Options Die Namen und Werte der QF-Test Optionen.
qf Methoden des qf Modules.
rc Methoden des Runcontexts.
resolvers Methoden des Resolvers Moduls.
Wenn Sie nur [Strg-Leertaste] klicken ohne etwas einzugeben Eine Liste aller Variablen, für die Vervollständigung möglich ist.
Tabelle 37.1:  Liste der Variablen mit Vervollständigung.