Antworten Testspezifikationsfragen
Picture  Guidancer
Melden Sie sich für den Eclipse Testing Day an! (28.07.2010)

Ab heute stellen wir die Agenda für den Eclipse Testing Day (8. September, Darmstadt) vor! ..



GUIdancer 4.2 freigegeben! (24.06.2010)

Version 4.2 von GUIdancer steht nun zum Download bereit. ..



Button:back to faq

Antworten auf Testspezifikationsfragen


Wo sollte ich anfangen?


Wir empfehlen Ihnen, sich erstmal die Welcome Page anzuschauen. Danach, rufen Sie über das Help Menü die Cheat Sheets im GUIdancer-Client auf. Somit lernen Sie die Konzepte und Funktionen des GUIdancer kennen.


GUIdancer ist ein leistungsstarkes Werkzeug und unterstützt die Wiederverwendbarkeit von Testfällen. Aus diesem Grund empfehlen wir, dass Sie sich Gedanken darüber machen, wie Ihre Test am besten strukturieren.



Wie and warum sollte ich meine Tests strukturieren?


GUIdancer Tests werden aus Bausteinen (Testfällen, Schlüsselwörtern, Modulen) zusammengebaut. Nach der Spezifikation eines Testfalls, kann dieser wiederverwendet werden. Der Vorteil daran ist, dass Ihre Tests eine bessere Struktur haben. Je häufiger Sie Testfälle wiederverwenden, desto wartbarer sind Ihre Tests, denn zentrale Veränderungen aktualisieren dann einen ganzen Test.


GUIdancer unterstützt Wiederverwendbarkeit, indem er Ihnen auf verschiedene Weise anbietet, Testfälle möglichst flexibel zu halten. Je abstrakter der Testfall, desto einfacher ist es, ihn an vielen Stellen wiederzuverwenden.


Wir empfehlen Ihnen, Ihre Daten getrennt von den Testfällen zu verwalten. Benutzen Sie in Ihren Testschritten Referenzen statt Parameterwerten. Sie können Ihre Gesamtmenge an Testfällen reduzieren, wenn Sie die zu testende Komponente in einem Testfall verändern. GUIdancer unterstützt außerdem abstrakte Komponenten, um die Flexibilität Ihrer Tests zu verbessern. Mit der ausgelieferten Testfallbibliothek können Sie strukturierte, wartbare Tests einfach per Drag&Drop erstellen.



Wie kann ich Hilfe finden?


Wir bieten Ihnen verschiedene Hilfsmittel für Ihren Einstieg in den GUIdancer an:




Seitenanfang


Was sind abstrakte Komponenten?


Als ''abstrakt'' werden allgemeine Komponenten bezeichnet, welche die genaue Implementierung offen lassen. Im Gegensatz zu sogenannten 'konkreten' Komponenten, die auf einen Komponententyp begrenzt sind (z.B Baum, Tabelle), schließt eine abstrakte Komponente mehrere konkrete Komponenten ein, welche die gleichen Aktionen auf ähnlichen Komponenten ausführen. Die abstrakte ''Component with Text Input'' kann zum Beispiel den Text in verschiedenen Komponenten prüfen.

Die Wiederverwendbarkeit Ihrer Testfälle wird durch solche Komponenten erhöht. Ihre Allgemeinheit macht sie einfach wiederverwendbar, denn die genauen Komponenten werden erst über das Object Mapping festgelegt. Abstrakte Komponenten verleihen Ihren Tests zudem eine gewisse Wartbarkeit, da eine Veränderung des Komponententyps einfach dem ursprüglichen Komponentennamen zugeordnet werden kann. Ein Testschritt zur Dateneingabe in einem Textfeld, der mit einer 'Component with Text' spezifiziert wurde, kann später auf einer Combobox gemappt werden.



Was ist ein Pfad?


GUIdancer verwendet viele benutzerfreundliche high-level Aktionen. Dementsprechend verlangen viele Aktionen in GUIdancer (z.B. auf Bäume, Menüleisten, usw.) einen Pfad als Parameter, weil sich die Komponenten so besser bedienen lassen. Der Pfad ist nichts anderes als der Weg durch das Menü oder durch den Baum, um zum gewünschten Eintrag oder Blatt zu kommen. Pfade können meistens entweder über den Inhalt, oder Textpfad (z.B. File/Edit) oder über die Position der Elemente, den Indexpfad (z.B. 1/2) angegeben werden.

Wichtig bei Pfadangaben ist, dass ein Trennsymbol ('/') zwischen Elementen benutzt wird. Die Indexnummerierung beginnt immer bei ''1''.


Menue GUIdancer

Für das obige Beispiel lautet der Textpfad Window/Open Perspective/GUIdancer Specification. Der Indexpfad ist: 4/1/2.


Pfad

Der Pfad zum selektierten ''Test Step'' Knoten ist entweder: Project/Test Suite/Test Case 2/Case B/Test Step oder 1/1/2/2/1.


Seitenanfang


Wie kann ich einen Eintrag aus einem Hauptmenü selektieren?


Um einen Menüeintrag zu selektieren müssen Sie die 'Menu bar' Komponente auswählen. Sie können dann eine Aktion selektieren, um den Eintrag auszuwählen. Die Auswahl des Eintrags wird über einen Pfad angegeben.


Seitenanfang


Wie kann ich ein Kontext-Menü auf einer Komponente öffnen?


Kontext-Menüs werden in der Regel dadurch geöffnet, dass mit der rechten Maustaste auf einer bestimmten Stelle in einer Komponente geklickt wird. Der Inhalt des Menüs hängt von dieser Stelle und dem Zustand der Anwendung ab. Genauso öffnet GUIdancer Kontext-Menüs. Sie wählen eine Komponente aus, auf der Sie ein Menü öffnen möchten. Danach selektieren Sie eine Aktion auf dieser Komponente, um das Kontext-Menü zu öffnen. Bei den meisten Komponenten haben Sie verschiedene Möglichkeiten anzugeben, wo das Menü geöffnet werden sollte, und wie der Menüeintrag selektiert werden sollte. Diese Details werden über die Parameter der Aktion bestimmt.

Das Object Mapping erfolgt ganz normal indem Sie die Komponente aus der Anwendung einsammeln, auf der Sie das Kontext-Menü öffnen möchten (z.B. Tree, Table).

Pfad

Im obigen Beispiel wurde das Kontext-Menü auf einem Baum geöffnet. Der Textpfad zum Knoten, auf dem es geöffnet wurde, lautet Project/Test Suite. Der Pfad zum selektierten Eintrag ist: Delete.* (mit dem Operator matches).


Seitenanfang


Wie kann man Elemente in einem Baum selektieren/aufklappen/zuklappen/prüfen?


Solche Aktionen auf Bäume werden über einen Pfad spezifiziert. Sie haben verschiedene Möglichkeiten, Bäume zu bedienen, je nachdem was Sie machen wollen, und wie Sie den Pfad angeben möchten (Text- oder Indexpfad). Wenn Sie einen Textpfad verwenden, empfehlen wir, dass Sie den Textpfad mit regulären Ausfrücken versehen (verwenden Sie den Operator matches), damit der Test robuster ist. Bei Selektionen klappt GUIdancer den Baum automatisch auf -- Sie müssen den Baum nicht explizit aufklappen.

Im Help Menü in GUIdancer finden Sie ein ''Cheat Sheet'' über das Testen von Bäumen.


Seitenanfang


Reguläre Ausdrücke zur Textselektion/-prüfung.


Benutzen Sie reguläre Ausdrücke für Textselektion und -prüfung, um Ihre Tests robust zu halten. Sie können, zum Beispiel:

mit regulären Ausdrücken prüfen. Mit dem ''Operator'' matches können Sie reguläre Ausdrücke im Textstring verwenden. Simple match ist eine einfache Möglichkeit, Wildcards zu benutzen. Das Sternchen (*) ersetzt ein oder mehrere Zeichen (z.B. Projekt*).


Seitenanfang


Wie kann ich die mitgelieferte Testfallbibliothek verwenden?


In der GUIdancer Installation gibt es Projekte mit atomaren Testfällen, die alle unterstützen Aktionen abdecken.


Selektieren Sie den wiederzuverwendenden Testfall aus der Bibliothek und fügen Sie ihn per Drag&Drop zu Ihrem Testfall hinzu. Geben Sie Parameterwerte oder Referenzen im Properties View ein, und überschreiben Sie den Komponentennamen im Component Names View mit einem sinnvollen Namen für die zu testende Komponente.


Seitenanfang


Wie kann ich Pop-Ups und Fehler im Test handhaben?


Benutzen Sie Event Handler, um mit gelegentlichen Pop-Ups und anderen Fehlern umzugehen. Event Handler sind Testfälle, die nur im Fehlerfall aufgerufen werden. Ein Event Handler zum Schließen eines Pop-Ups (mit Alt+F4, zum Beispiel) könnte spezifiziert werden, um mit einem fehlgeschlagenen Testschritt umzugehen. Der Test kann dann weiterlaufen.

Sie finden ein ''Cheat Sheet'' zum Einsetzen von Event Handlers im Help Menü im GUIdancer.


Seitenanfang


Kann GUIdancer Native Dialoge testen?


Sie können Native Elemente (z.B. Auswahldialoge zum Öffnen einer Datei) mit den Aktionen external key combination und external input text bedienen. Diese Aktionen sind unter der ''Application'' Komponente zu finden und erlauben die Eingabe von Text und das Schicken von Tastaturbefehlen an native Elemente.

Sie können auch die Aktionen Copy to clipboard und anschließend Ctrl+V (oder Mod+V für plattformunabhängige Tests) als Tastatureingabe (Komponente: ''Application'') verwenden, um Text und Dateipfade in native Dialoge einzugeben.


Seitenanfang


Wie setze ich Checkpoints?


Ein Testfall zum Prüfen von Eigenschaften ist ein Testfall wie jeder andere. Wählen Sie die Komponente, auf der Sie eine Prüfung ausführen wollen (z.B. eine component with text). Selektieren Sie dann die auszuführende Prüfaktion (z.B. check text). Geben Sie den zu prüfenden Text als Parameter ein. Wenn Sie reguläre Ausdrücke für Stringvergleiche verwenden, werden Ihre Tests robuster.



Seitenanfang


Wie kann ich prüfen, ob ein Feld leer ist?


Sie können leere Felder prüfen, indem Sie:



Seitenanfang


Wie lautet das Escape-Symbol für Sonderzeichen?


Mit einem Backslash können Sie einzelne Sonderzeichen aufheben. Um einen ganzen String mit verschiedenen Sonderzeichen einzugeben, verwenden Sie einfache Anführungszeichen (z.B. 'String').

Im Reference Manual finden Sie weitere Informationen über Sonderzeichen in GUIdancer.



Seitenanfang


Kann ich z.B. "if...else" Bedingungen spezifizieren?


In einem GUIdancer Test ist es einfach, Bedingungen wie die folgenden zu spezifizieren:




Seitenanfang


Wie gebe ich boolesche Werte für den GUIdancer in eine Excel-Tabelle ein?


Die Eingabe boolescher Werte für den GUIdancer in Excel kann zu Problemen führen. Gibt man true oder false in eine Zelle ein, wird dieses automatisch in einen Excel-booleschen Wert umwandelt. Der GUIdancer kann diesen Wert zur Laufzeit nicht auslesen.


Sie müssen die Formatierung für die Spalte auf Text setzen, damit die eingegebenen Werte nicht von Excel als boolesch interpretiert werden. Somit kann der GUIdancer die Werte für die Testausführung auslesen und verwenden.



Seitenanfang


Können GUIdancer Testdaten internationalisiert werden?


Ja, Sie können Ihre GUIdancer Testdaten einfach übersetzen, damit Ihre Tests in allen Anwendungssprachen laufen.



Seitenanfang


zurück zur Übersicht