Logo QF-Test

Tutorial zur praktischen Einführung
in QF-Test

 

Gratis Testen  Download  Kaufen

Yann Spöri, QF-Test Entwicklung & Support

Die Beispiele, Demos und praktischen Übungen zu QF-Test verhelfen zu einem schnellen Start.

Yann Spöri,
Software Engineer, QFS

Uwe Klüh, Senior Sales Manager, QFS

Durchsuchen Sie die gesamte Dokumentation (Handbuch, Tutorial, Mailingliste, Standardbibliothek), indem Sie die Suchfunktion der Homepage nutzen.

Uwe Klüh, Sr. Sales Manager, QFS

Tutorial

11
Erstellen einer eigenen Testsuite [45-60 Min]
11.1
Einführung

Dieses Kapitel wird Sie durch die Schritte führen, die notwendig sind, um Ihre erste eigene Testsuite zu erstellen:

  • Starten des SUT aus QF-Test heraus.
  • Aufnehmen einiger Aktionen und Organisieren der Testsuite.
  • Erstellen eines Tests, welcher eine echte Funktionalität im SUT überprüft.
11.2
Starten der Anwendung

Öffnen Sie bitte eine neue, leere Testsuite mittels »Datei«-»Neue Testsuite...«. Bitte beachten Sie, dass die "alte" Testsuite in einem getrennten Fenster geöffnet bleibt.

Stellen Sie bitte sicher, dass die Detailansicht aktiv ist (»Ansicht«-»Details anzeigen«). In der linken Ebene des zweigeteilten Bildschirms sehen Sie den Baum, welcher die Testsuite repräsentiert. Für den dort gerade ausgewählten Knoten werden auf der rechten Seite die Attribute im Detail angezeigt.

Zu Beginn muss die zu testende Applikation (engl. System under Test oder SUT) aus QF-Test heraus gestartet werden. In unserem Fall ist dies der Browser mit der "Web demo", die wir bereits aus dem vorigen Kapitel kennen. Wir werden den Schnellstart-Assistenten benutzen, um eine entsprechende Startsequenz zu erzeugen.

Öffnen Sie bitte den Schnellstart-Assistenten über das »Extras« Menü. Dieser sollte Sie entsprechend dem folgendem Bild begrüßen. Nach einem kurzen Hallo drücken Sie bitte den "Weiter" Knopf.

Abbildung 11.1:  Der Schnellstart-Assistent.

Hier kann der Typ der zu testenden Applikation ausgewählt werden. Selektieren Sie bitte "Eine Webseite in einem Browser" und gehen Sie weiter.

Abbildung 11.2:  Auswählen des SUT Typs.

Nun werden Sie nach der URL der zu testenden Webseite gefragt, welches die "Web demo" Seite sein wird. Der einfachste Weg diese auszuwählen, ist mithilfe des Webseite auswählen Knopfes den Dateibrowser zu öffnen und damit zum versionsspezifischen qftest-x.y.z Verzeichnis zu navigieren, dann weiter zu .../doc/tutorial/web/de, wo Sie dann die Datei index.html auswählen können. Anschließend gehen Sie bitte weiter zum nächsten Schritt im Assistenten.

Abbildung 11.3:  Angabe der URL.

Der nächste Schritt ermöglicht die Auswahl eines AJAX Toolkits auf dem die Web-Anwendung basiert. Obwohl unser Demo keines der genannten Toolkits nutzt, können Sie einfach die empfohlene Autoerkennung aktiv lassen und weitergehen.

Abbildung 11.4:  AJAX Toolkit.

Nun ist es Zeit, den Browser fest zu legen. Bei Windows ist dies sehr wahrscheinlich der Internet Explorer, welcher bereits vorausgewählt ist und den wir auch für unseren ersten eigenen Test benutzen wollen. Unter Linux wählen Sie sinnvollerweise Firefox.

Abbildung 11.5:  Auswahl des Browsers.

An dieser Stelle hat man die Möglichkeit einen speziellen Kompatibiltätsmodus für den Internet Explorer auszuwählen, falls die zu testende Seite eine spezielle IE Version benötigt. Da dies in unserem Fall nicht erforderlich ist, können wir einfach auf "Weiter" drücken. (Wenn Sie Firefox ausgewählt hatten, sehen Sie an diese Stelle eine andere Option und müssen das Installationsverzeichnis des Firefox Browsers angeben, den Sie zum Testen nutzen möchten.)

Abbildung 11.6:  Internet Explorer compatibility mode.

Der nächste Schritt bietet die Möglichkeit ein definiertes Java Programm für die Ausführung des Browser-Wrapper Prozesses anzugeben. Dies kann nötig sein, wenn Sie mehrere Java Version auf Ihrem Rechner installiert haben (insbesondere 32bit und 64bit) oder wenn Java Applets involviert sind. In den meisten Fällen sollte Sie mit dem vorgegebenen Wert weitergehen können.

Abbildung 11.7:  Java Programm für das Starten des Browser Wrappers.

Dieser Schritt bietet die Möglichkeit für einige Grundeinstellungen des Browsers. Sie können einfach die vorgeschlagenen Einstellungen beibehalten und fortfahren.

Abbildung 11.8:  Die Browser-Einstellungen.

Da wir nur mit einem Browser-Fenster arbeiten möchten, können Sie auch beim nächsten Schritt ohne Änderungen weitergehen.

Abbildung 11.9:  Name für Browser-Fenster.

Fast haben wir es geschafft. Bleibt noch die Vergabe eines Namens als Referenz für unseren Client. Wir wollen ihn einfach "web" nennen. Das Auswahlkästchen auf der Seite lassen Sie bitte unangetastet leer und drücken bitte auf "Weiter".

Abbildung 11.10:  Name des Clients.

Zu guter Letzt gibt es einige Informationen was wir zu erwarten haben, wenn der Assistent nun seine Aufgabe, eine Startsequenz zu erzeugen, abschließt und wo es Hilfe gibt im Fall von Problemen. Deaktivieren Sie bitte noch die "Automatisch starten" Option, da wir zuerst einen Blick auf die erzeugte Startsequenz werfen wollen. Nun drücken Sie bitte den "Fertig" Knopf.

Abbildung 11.11:  Abschließende Informationen.

Die generierte Startsequenz erscheint in den "Extrasequenzen" und enthält fünf Hauptschritte:

  1. Globale Variablen setzen
  2. Browser ohne Fenster starten
  3. Einstellungen für Browser setzen
  4. Browser-Fenster mit URL öffnen
  5. CustomWebResolver installieren
Abbildung 11.12:  Generierte Startsequenz.

Die Schritte eins bis vier kennen wir bereits aus dem letzten Kapitel. Der finale Schritt sorgt für den Start der automtische Erkennung von Ajax Toolkits und die Aktivierung passender Resolver.

Sie können einen Blick auf die Details der Knoten werfen und werden im wesentlichen die Werte, die Sie während der einzelnen Schritte im Assistenten eingegeben haben, den entsprechenden Knotenattributen zugewiesen finden.

Nun wollen wir die Sache in Aktion sehen. Stellen Sie bitte sicher, dass der Knoten "Vorbereitung" ausgewählt ist und drücken Sie den Wiedergabe Knopf oder betätigen einfach die Zeilenvorschub-Taste [Return].

Nach einigen Sekunden sollte das Browser-Fenster erscheinen und die Webdemo-Seite anzeigen, äquivalent Abbildung 10.4 aus dem vorigen Kapitel.

11.3
Hinzufügen einer Mausklick Sequenz

Wir werden nun einen recht einfachen Test in Form einer Mausklick Sequenz hinzufügen.

  • Als Ausgangsposition gehen Sie bitte auf die Seite "Willkommen".
  • In QF-Test drücken Sie nun bitte den "Aufnahme" Aufnahme Knopf und wechseln Sie zum Browser-Fenster. Von jetzt ab wird jede Maus- oder Tastaturaktion aufgenommen.
  • Wählen Sie nun die Seite "Optionsfelder und Auswahlkästchen" aus (ebenfalls bekannt aus dem letzten Kapitel Abbildung 10.14) und führen dort einige Aktionen durch und schließen diese mit einem Druck auf den "submit" Knopf ab.
  • Zum Schluss wechseln Sie zurück zum QF-Test Fenster und drücken Sie dort den Stop Knopf. Sie finden die neu aufgenommene Sequenz unter dem "Extrasequenzen" Knoten, wie im folgenden Bild dargestellt.
Abbildung 11.13:  Der Baum nach Aufnahme der Mausklick Sequenz.

Als Name wird standardmäßig Datum und Zeit der Erstellung verwendet. Dieser kann anschließend beliebig verändert werden.

In der Sequenz gibt es neben den "Mausklick" Knoten auch zwei Knoten "Warten auf Laden des Dokuments". Diese erzeugt QF-Test automatisch dann, wenn ein neues Dokument geladen wird. In unserem Fall beim initialen Wechsel auf die "Optionsfelder und Auswahlkästchen" Seite und nach Drücken des "submit" Knopfs, welcher auch einen Neuaufbau bewirkt.

Wir wollen die neu erzeugte Sequenz als Überprüfung gleich wieder abspielen. Dabei dürfen wir nicht vergessen auf die "Willkommen" Seite zu wechseln, denn das war ja die Ausgangsposition der Aufnahme. Anschließend markieren wir den Sequenzknoten und drücken auf Play. Der Ablauf der Mausklick Sequenz im SUT sollte sich nun wiederholen.

Bevor wir einen etwas komplexeren Test erstellen, wollen wir aus dem Inhalt unserer "Extrasequenzen" eine richtige Testsuite strukturieren.

11.4
Strukturieren einer Testsuite

Bisher haben wir in den "Extrasequenzen" gearbeitet, die eine Art Spielwiese zum Ausprobieren darstellen. Nun wollen wir eine richtige Testsuite aufbauen.

Als erstes selektieren wir den Knoten "Testfallsatz" und ändern seinen Namen z.B. in "Webdemo". Anschließend expandieren Sie den Knoten und ändern den Namen des enthaltenen Testfalls z.B. auf "Clickstream".

Nun muss die Vorbereitungssequenz aus den "Extrasequenzen" in den Testfallsatz Knoten verschoben werden und zwar an die erste Stelle, d.h. vor den Testfall "Clickstream". Dies kann mit Hilfe des Kontextmenüs (rechte Maustaste Ausschneiden/Einfügen) oder der Tastenkombination [Strg-X] und [Strg-V] erreicht werden aber auch durch Ziehen mit der Maus (Drag&Drop).

Hinweis Bei Drag&Drop kann der Zielknoten aufgeklappt werden, in dem man den Mauszeiger über dem "+" links vom Zielknoten verweilen lässt.

Nun ist die aufgenommene Clickstream-Sequenz an der Reihe, um aus den "Extrasequenzen" geholt und in den Testfall "Clickstream" abgelegt zu werden. Falls die Sequenz noch den Zeitstempel als Namen hat, können Sie ihn auch in etwas Sinnvolleres wandeln.

Zum Schluss erzeugen wir eine "Aufräumen" Sequenz, um den Browser zu beenden. Sie besteht aus zwei Schritten: Einer, den Client zu beenden und ein zweiter, um sicher zu stellen, dass er auch wirklich terminiert wurde. Führen Sie bitte selbständig diese kleine Aufgabe durch. Wenn Sie fertig sind, werfen Sie zum Vergleich bitte einen Blick auf die nachfolgende Grafik.

Abbildung 11.14:  Der Baum nach der Neustrukturierung.

Damit haben wir die wichtigsten Schritte zur Strukturierung unserer Testsuite abgeschlossen. Im folgenden Abschnitt werden wir einen "Check" aufnehmen, um den Inhalt eines Textfeldes zu überprüfen.

11.5
Überprüfen eines Textfeldes

Wir wollen nun einen unwesentlich komplexeren Test erstellen, in dem wir ein Formular ausfüllen und den Ergebnisstring überprüfen.

  • Wenn der Browser nicht läuft, so starten Sie ihn bitte durch Ausführung der Vorbereitungssequenz. Ansonsten wechseln Sie auf die "Willkommen" Seite, um einen sauberen Ausgangszustand zu haben. Drücken Sie nun in QF-Test den "Aufnahme" Aufnahme Knopf und wechseln zum Browser-Fenster.
  • Wählen Sie die Seite "Texteingabe" über die Menüzeile. Wir kennen Sie bereits von Kapitel Abschnitt 10.5.
  • Nun füllen Sie bitte das Formular mit einigen Daten aus und drücken abschließend den "submit" Knopf. Ein String, welcher eine Zusammenfassung der eingegebenen Informationen darstellt, erscheint im Textbereich am Ende der Seite.
  • Wir wollen einen Check für diesen Ergebnisstring aufzeichnen. Hierfür aktivieren Sie bitte den "Check aufnehmen" Check           aufnehmen Knopf in QF-Test und wechseln wieder zum Browser. Wenn Sie dort den Mauszeiger über Komponenten bewegen, werden diese durch einen Rahmen hervorgehoben. Um den Check aufzuzeichnen, manövrieren Sie bitte die Maus zu besagtem Textbereich und betätigen Sie die rechte Maustaste. Das Menü beinhaltet verschiedene Arten von Checks, beginnend mit "Text". Die folgende Abbildung zeigt die Situation:
Abbildung 11.15:  Aufnahme eines Text Checks.
  • Wählen Sie bitte den "Text" Check aus und beenden Sie danach die Aufnahme mit Stop.

    Tipp: Anstatt für die Aktivierung des Checkmodus zurück in die Testsuite zu springen, um den Check aufnehmen Knopf zu drücken, können Sie auch einfach im SUT bleiben und die Taste [F12] verwenden. Sie aktiviert/deaktiviert den Modus zum Aufnehmen von Checks.

Sie sollten nun die Kenntnisse besitzen, um die aufgenommene Sequenz in einem Testfall zu organisieren. Anschließend können Sie Ihr Ergebnis mit unserer folgenden Lösung vergleichen. Hierbei haben wir zusätzlich Sequenzen in "Testschritt" Knoten konvertiert, womit sie genauer spezifiziert sind und auch im Report sichtbar werden.

Abbildung 11.16:  Der Baum nach Aufnahme und Organisieren des "Text check" Knotens.

Hinweis Knoten konvertieren kann man sehr einfach über den Menüpunkt »Operationen«»Knoten konvertieren in« oder über das Kontextmenü des Knotens.

Lassen Sie uns einen ersten richtigen Testlauf mit unserer neuen Suite durchführen. Beenden Sie dazu bitte den Browser und markieren den Wurzel-Testknoten. Führen Sie diesen durch Drücken von "Wiedergabe" Play oder der [Return] Taste aus. Verläuft alles nach Plan?

Das Ergebnis des Testlaufs wird im "Protokoll" festgehalten. Um dieses anzuschauen, können wir direkt den Button "Protokoll anzeigen" nutzen oder wir wählen im Menü »Wiedergabe«-»1. ...« oder aber benutzen die Tastenkombination [Strg-L].

Abbildung 11.17:  Der Protokollbaum zum eigenen Test.

Im Protokoll wird nochmal deutlich, dass die Knoten "Vorbereitung" und "Aufräumen" vor bzw. nach jedem Testfall ausgeführt werden, um für definierte Zustände zu sorgen.

Hinweis Das Starten und Beenden der zu testenden Anwendung vor und nach jedem Testfall ist zwar ein sicherer Weg zum Herstellen sauberer Ausgangsbedingungen, jedoch auch ein zeitaufwendiger. In der Regel wird man versuchen das SUT nur einmal zu starten und durch andere Methoden einen definierten Ausgangszustand sicherzustellen.

In diesem Testlauf traten keine Fehler oder Exceptions auf. Aber Sie sehen gelbe Rahmen um einige Knoten im Protokollbaum, welche auf Warnungen hinweisen. Im Webdemo werden sie durch Komponenten hervorgerufen, die keine Namen zugewiesen haben. Wir möchten an dieser Stelle nicht weiter auf diese Warnungen eingehen, aber Sie finden ausführliche Informationen zur Wichtigkeit von Komponentennamen im Handbuch.

Beim Schließen des Protokolls wird gefragt, ob Sie speichern möchten, da es nur so lange verfügbar ist, bis QF-Test beendet wird.

Wir werden nun einen Fehler in Knoten "Check Text" provozieren. Selektieren Sie den "Text Check" Knoten, um die Detailansicht zu öffnen:

Abbildung 11.18:  Ausschnitt der Detailansicht des Knotens "Check Text".

Im "Text" Feld lässt sich ablesen, welchen Wert QF-Test in diesem Check erwartet. Um einen Fehler zu verursachen, ändern Sie diesen Text in beliebiger Weise ab. Bestätigen Sie anschließend Ihre Eingabe mit OK und führen den Test erneut aus.

Ein Dialog mit dem Hinweis erscheint, dass, wie erwartet, ein Fehler aufgetreten ist.

Wenn Sie nun das neue Protokoll öffnen, sehen Sie ein rotes Quadrat um den Knoten "Check Text", welches anzeigt, dass unterhalb dieses Knotens ein Fehler aufgetreten ist. Benützen Sie im Menü »Bearbeiten«-»Nächsten Fehler finden« oder die Tastenkombination [Strg-N], dann sehen Sie den von QF-Test erwarteten Text und was im Testlauf gefunden wurde.

Um den "Check" Knoten wieder zu korrigieren, können Sie sich einer hilfreichen Funktion in QF-Test bedienen. Klicken Sie mit der rechen Maustaste auf den Knoten im Protokoll, der die Abweichung angezeigt hat und wählen Sie aus dem erscheinenden Kontextmenü "Check Knoten mit erhaltenen Daten aktualisieren".

Uff, die erste eigene Testsuite ist fertig. Vielleicht möchten Sie diese zum Abschluss speichern.

Videos Downloads Dokumentation Kaufen Gratis Testen