Selenium RC Beispiel: Test eines JSF Spiels "Hangman"

JSF Projekt "Hangman" einrichten:

Das zu testende Projekt muss angelegt werden und auf einem Anwendungsserver (z.B. Tomcat 7 oder Glassfish 3) laufen.
Für Tests mit Selenium Werkzeugen spielt es keine Rolle, ob das Projekt von einer IDE wie Eclipse oder Netbeans aus auf dem Server installiert oder z.B. in Form eines "Web Archive" (.WAR) manuell auf dem Server installiert wird.
Das Beispielprojekt liegt vor - in Form von ".java" Sourcen für die Beans und ".xhtml" Dateien für die Facelets.
Man sollte darauf achten, den Web-Elementen beim Anlegen der .xhtml Seiten IDs zu vergeben, damit diese beim Anlegen der Tests, identifiziert werden können. Anderenfalls würden den Elementen sonst unleserliche, automatisch generierte IDs zugewiesen werden.

Projektordner

Es muss zunächst ein neues JSF 2.0 Projekt angelegt werden:

Anleitung für Eclipse
Anleitung für NetBeans (Nur erster Schritt "Erstellung eines Web-Projektes")

Anschließend muss der Inhalt des Beispiel "src" Verzeichnisses im Projektordner
in den entsprechenden "src" Ordner des neu angelegten Projektes kopiert werden.
Der Inhalt des Beispiel "web" Verzeichnisses, muss in den entsprechenden "web" (NetBeans) bzw. "WebContent" (Eclipse) Ordner des neu angelegten Projektes kopiert werden.
Danach kann das Projekt gestartet werden.
Wenn die Servereinstellungen (Host, Port usw.) nicht verändert wurden, kann das "Hangman" Spiel aus einem Webbrowser mit der URL "http://localhost:8080/Projektname/faces/index.xhtml" ("Projektname" durch den tatsächlichen Projektnamen austauschen) aufgerufen werden, andernfalls muss die URL entsprechend angepasst werden.

Selenium Testprojekt einrichten:

Ein neues Selenium Testprojekt kann entsprechend dieses Beispiels angelegt werden.
Anschließend können folgende Testfälle implementiert oder in den entsprechenden Source-Ordner für Tests kopiert werden.

Das Hangman Spiel

Bei dem Spiel können Wörter eingegeben werden, die später, per Zufall ausgewählt, erraten werden müssen. Das Spiel zählt die Anzahl der gebrauchten Versuche und zeigt richtig erratene Teile des Lösungsworts. Eine "geheime" Seite "uebersicht.xhtml", die nicht über die Spieloberfläche erreichbar ist, gibt eine Übersicht über alle im Wortspeicher vorhandenen Wörter.

Absichten der Testfälle

Testfälle WortAnlegen1 bis 3 testen das Anlegen von neuen Wörtern für das Ratespiel "Hangman". Mit Hilfe der Seite "uebersicht.xhtml", wird darauf hin überprüft, ob das Wort auch tatsächlich in den Wortspeicher eingefügt wurde.
  • WortAnlegen1 testet das Bestätigen der Worteingabe per Mausklick.
  • WortAnlegen2 testet das Bestätigen der Worteingabe mit Hilfe der Selenium eigenen "Submit"-Funktion, die das Ende des Formulars sucht und es absendet.
  • WortAnlegen3 testet das Bestätigen der Worteingabe per Druck der "Enter" Taste.

    Testfälle SpielVersuche1 bis 4 testen den Zähler für benötigte Rateversuche.
  • SpielVersuche1 testet darauf, dass beim Spielstart "0" Versuche angezeigt werden.
  • SpielVersuche2 testet die Anzeige der Spielversuche bei Absenden von (leeren) Versuchen per Mausklick.
  • SpielVersuche3 testet die Anzeige der Spielversuche bei Absenden von (leeren) Versuchen per "Enter" Taste.
  • SpielVersuche4 testet die Anzeige der Spielversuche bei Absenden von (leeren) Versuchen bei Störung des Ablaufs durch Browser-Funktion "zurück".

    Testfall SpielGewinn1 testet darauf, dass das Wort tatsächlich erraten werden kann und in der Gewinnbenachrichtigung die korrekte Anzahl der benötigten Versuche angezeigt wird.

    Zurück zur Werkzeugübersicht
    Zurück zur CSI-Hauptseite