Erstellung eines JSFUnit Projektes mit NetBeans

Diese Seite beschreibt wie ein Projekt für JSFUnit in Netbeans 6.9 angelegt werden kann. Dabei handelt es sich um ein Web-Projekt, welches für einen JSFUnit-Test eingerichtet wird.
Falls Sie NetBeans noch installieren müssen, finden Sie hier eine Installationsanleitung.

Erstellung eines Web-Projektes

Neues Projekt

Name eingeben

Wähle Glassfish-Server aus

Wähle JSF aus

Ausbau zu einem Web-Beispielprojekt

Beschreibung:
Dieses Beispielprojekt soll eine durch Vor- und Nachname eingegebene Person individuell begrüßen. Auf der Index-Seite sollen Vor- und Nachname eingegeben werden. Nach Bestätigung durch Klick auf "weiter", wird auf eine Seite weiter geleitet, die eine an die eingegebene Person angepasste Begrüßung ausgibt.

Fertiges Web-Beispielprojekt herunterladen.

Anleitung zum Selbsteinrichten:
Als erstes erstellen wir ein Package namens bean und darin eine Klasse Person.
Hier ist die Beispielklasse. Zum Kopieren einfach auf das Bild klicken.
Beispiel Projekt

Bearbeiten der index.xhtml
Index Seite

Als nächstes erstellen wir eine Begrüßungsseite
Neue JSF-Seite

Name der JSF-Seite

Inhalt der Grußseite

Rechte Maustaste auf das Projekt -> New Other...
New Other

Bearbeiten der faces-config Datei
faces-config
Damit haben wir ein erstes funktionstüchtiges JSF Beispielprojekt.

Ausbau zum JSFUnit-Testprojekt

Beschreibung:
Es werden die notwendigen Bibliotheken eingebunden und ein Testszenario erstellt. Dieses Testszenario prüft die vorher erstellte Applikation auf Funktionstüchtigkeit.

Fertiges JSFUnit-Testprojekt hier herunterladen.

Anleitung zum Selbsteinrichten:
Als erstes erstellen wir eine Bibliothek für die einzubindenden Jar-Files.
Jar-Files hier herunterladen.
Libraries

Links unten -> New Library...
New Library

Name der neuen Bibliothek

Rechts mitte -> Add JAR/Folder...
Jar Dateien Hinzufügen

Jar Dateien auswählen

add Library

Bibliothek auswählen

Somit sind die Notwendigen Libraries eingebunden und es kann mit dem Testszenario begonnen werden.
Dieses besteht aus einer Testklasse ( TestCase ), welche mit Hilfe von JUnit ausgeführt wird.

Rechte Maustaste auf das Projekt -> New Other
New Test Case

Test Case Name

Es sollte JUnit in der Version 3 ausgewählt werden, da unter Anderem die Annotationen aus JUnit 4 in JSFUnit 1.3.0 noch nicht unterstützt werden und die benötigte "junit.runner.TestSuiteLoader" Klasse in JUnit 4 fehlt.
JUnit 3x

Der Testfall muss in den bean Ordner verschoben werden, damit dieser vom Browser ausführbar ist.
Test Case in bean verschieben

Test Case Inhalt
Die Testklasse "PersonJUnitTest.java" startet vor jedem Test eine JSF Session und öffnet die zuvor erstellte index.xhtml Seite. Die beiden Testfälle greifen dann auf Elemente der Seite zu, um Werte in Eingabefelder zu schreiben und den Inhalt danach auszuwerten. Um das gewünschte Element auszuwählen, werden die in der index.xhtml vergebenen IDs verwendet. Speziell in diesem Beispiel sind es "PersonF:vorname" und "PersonF:name", wobei "PersonF" die ID des Formulars und "name" und "vorname" die entsprechenden IDs der beiden inputText Elemente sind.
Der erste Testfall ist darauf ausgelegt ein korrektes Ergebnis anzuzeugen, während der zweite einen gescheiterten Test demonstrieren soll, indem bewusst ein Wert gesetzt wird, der nicht von dem Testfall erwartet wird.

Zum Schluss muss nur noch die Datei cactus-report.xsl in den Web-Ordner kopiert werden.
Ort für cactus-report.xsl

Test ausführen

Zum Ausführen muss das Projekt gestartet werden ( Die auszuführende Datei muss selektiert sein. ):
Projekt Starten

Anschließend wird mit Hilfe des Browsers der Test ausgeführt:
http://localhost:8080/WebApplication1/ServletTestRunner?suite=bean.PersonJUnitTest&xsl=cactus-report.xsl
Resultat des Tests
Beispielhaft gezeigt sind ein erfolgreicher und ein gescheiterter Test mit Fehlermeldung.

Beim Versuch den Test aus NetBeans heraus zu starten, könnte die Cactus Konfiguration behilflich sein.



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