Sonntag, 16. Mai 2010

Q175: Kann man eigentlich Dummys mit Trotteln übersetzen?

Am Freitag hab ich mir beim Thalia meine Bücher für den Urlaub gekauft. Den neuen Tom Sharp zur Weiterbildung der Lachfalten, den 35sten Schinken über die Habsburger zur Weiterbildung in Geschichte und Agile Java-Entwicklung zu Weiterbildung in Sachen Agiler-Tester. Die technische Infrastruktur für's Lernen erst im Urlaub, also Internetmäßig am Aasch der Welt aufzubauen, wäre fahrlässig. Also geht's damit heute schon los.

Das Buch Agile Java-Entwicklung besticht durch 13 Kapitel zum Thema Tools für Agile Entwicklung. Die restlichen 7 Kapitel beschreiben die Agilen Ansätze, die eh schon jede Sau 100x gelesen hat. Also 122 Seiten zum Überspringen.

In den besagten 13 Kapiteln geht es um den Aufbau einer „agilen technischen Infrastruktur“. Das Schöne dabei ist, dass da jedes Tools anschaulich beschrieben wird. Nicht durch irgendeine lapidare Aufforderung „und dann starten sie den jUnit-Runner…“, nein, beschrieben durch Erklärung der Hintergründe und konkrete Beispiele, wie z.B.:

-- Launch jUnitRunner
java org.junit.runner.JUnitCore {JavaKlasse}

Um überhaupt Futter für die agile technische Infrastruktur aufbauen zu können, bedarf es natürlich ein bissal JAVA-Grundlagen. Wenn schon im 4er-Konzept von jUnit die Rede von Annotations ist, dann will der Qualitäts.Beamte auch wissen was das ist. JAVA for Dummys (kann man eigentlich Dummys mit Trotteln übersetzen?) und Eclipse Quick Start sind ihr Geld wert.

Die ersten Micky-Maus-Java-Klassen sind in sage und schreibe 3 Minuten erstellt, compiliert und jUnit-mäßig getestet. Eclipse leistet da tolle Arbeit. Der grüne Balken ist zwar nett, aber in einer agilen technischen Infrastruktur spielt sich alles auf einer anderen Ebene ab. Da muss die Commandline beherrscht werden. Stichwort: Continuous Integration.

Und jetzt geht’s los. Was in Eclipse so einfach ist, weil alles fertig konfiguriert, erweist sich auf der Commandline als Alptraum. 3 verschieden JDKs, 5 verschiedene JREs, Junit 3.4 – 4.7. Ich finde auch zwei „normale“ Installationen von ANT und ein zusätzliches Win-ANT. Wie kommt der ganze Schrott auf mein Netbook?

Nach 15 Minuten kann ich endlich den jUnit-Test compilieren. Am jUnit-Runner scheitere ich. Irgendwie ist der jUnit-Runner unauffindbar. Scheiß Commandline! Scheiß Pfade! Scheiß Classpath!
     
Und jetzt geht’s natürlich mit unstrukturierten Aktionismus los. Ich tausche die Pfade, ich tausche die jUnit jar-Files. Ich tausche den Sitzplatz. Ich versuche andere Commandozeilenparameter. Was ist der Unterschied zwischen –cp und –classpath? Nach einer Stunde will ich aufgeben. Da fällt es mir wie Schuppen von den Augen. Und siehe da. Kaum macht man es richtig, funktioniert es.

Wer findet den Fehler?

1 Kommentar:

Anonym hat gesagt…

Also ich würde sagen dass
java org.junit.runner.JUnitCore {JavaKlasse}
nicht gleich
java org.junit.runner.JunitCore {JavaKlasse}
Casesensitiv!!!!! Klassiker!!!