|
Startseite | Quelltexte | Web-Links
Codebeispiele
Der Beispielcode aus den einzelnen Kapiteln befindet sich in den
Packages kapitel1, kapitel2 ... kapitel13, jeweils nur im
endgültigen Zustand, d.h., die im Buch aufgeführten Zwischenschritte sind nicht enthalten.
Da sich die Beispiele aus Kapitel 4 überwiegend auf Klassen aus Kapitel 3 beziehen, wurden sie
dort im Package kapitel3 eingearbeitet.
Zusätzlich existiert in jedem Package eine Klasse AllTests,
welche alle Testsuiten des jeweiligen Packages zusammenfasst. Die Klasse
utmj.tests.AllTests umfasst ihrerseits alle AllTests-Klassen
in einer Suite.
Damit alle Tests funktionieren können, sind folgende Bedingungen zu beachten:
- JUnit muss in Version 3.7 oder höher im
Klassenpfad installiert sein.
- Kapitel 9 erwartet eine ODBC-Datenquelle mit Namen "CRM" und folgenden 3 Tabellen:
- Customer: id (primary key), name, category (foreign key)
- CustomerCategory: name (primary key)
- CustomerContact: id (primary key), contact_note, contact_date,
customer_id (foreign key)
Die referenzielle Integrität der Foreign-Key-Beziehungen sollte von der Datenbank erzwungen werden.
Hier finden sie eine passende MS-Access-Datenbank.
- Kapitel 10 benötigt das utmj.threaded-Package (siehe unten).
- Kapitel 11 verlangt das Deployment der RMI-Klassen und eine gestartete RMI-Registry auf
dem Default-Port (1099).
- Kapitel 12 benötigt das utmj.servlet-Package (siehe unten),
das Deployment der Klasse MyServlet unter der URL
http://localhost:8080/servlet/kapitel12.MyServlet
sowie ein korrekt installiertes HttpUnit.
Eine abweichende URL erfordert die Anpassung der Testklasse
MyServletTest.
Die auf Cactus basierende Testsuite
MyServletCactusTest wurden auskommentiert,
da Cactus eine komplexe Installation erfordert und nur für einen kleinen Teil der
Leser interessant sein dürfte.
Sind alle obigen Voraussetzungen gegeben, sollte die Testsuite in
utmj.tests.AllTests mit 114 Tests fehlerfrei durchlaufen.
JUnit-Erweiterungen
Folgende proprietäre JUnit-Erweiterungen werden im Buch verwendet:
- utmj.threaded zum Testen von Multi-Thread-Programmen,
inklusive aller Testfälle und eines Beispiels, das einen Synchronisationsfehler aufdeckt.
- utmj.servlet zum Testen von Servlets ohne vorheriges Deployment,
inklusive aller Testfälle.
Hier findet man die CLASS-Files beider Erweiterungen in einem JAR-File.
|
|