Das funktionierte doch schon einmal! - JUnit Testing in XPages
1. 41. DNUG Konferenz · 11./12. November 2014 · Leipzig
Das funktionierte doch mal
JUnit Testing in XPages
Christan Güdemann
WebGate Consulting AG / OpenNTF
www.webgate.biz / www.openntf.org
christian.guedemann@webgate.biz
@guedeWebGate
2. Freitags, 15.07 Uhr
Noch diese kleine
Änderung, dann ist der
Kunde zufrieden!
4. Testen aber automatisch bitte!
Aus der Sicht des Benutzers
Funktioniert das UI
Werden die Daten validiert
die ich eingebe
Wenn ich A klicke passiert B
Aus der Sicht des Entwicklers
Tut mein Code, das was ich
erwarte?
Werden fehlerhafte Zustände
erkannt
Ist alles von meinem Code
getestet
5. Testen vor dem Programmieren?
Das Mantra des TDD
Schreib einen Test
Mach das der Test kompiliert
Der Test darf nicht erfolgreich sein
Mach das der Test erfolgreich ist
Entferne allen doppelten Code
(http://de.wikipedia.org/wiki/Testgetriebene_Entwicklung)
6. TDD – Schreib einen Test
Ein Test dokumentiert ganz genau was mein Code für ein Resultat haben
soll
int amountCHF = bank.changeEuro2CHF( 100 );
assertEquals( 120, amountCHF)
PS: dieser Test wird von der Schweizer Nationalbank jeden Tag durchgeführt
7. Und das kann man in XPages machen?
• YES – OpenNTF sei dank oder so ;)
• org.openntf.junit.xsp herunter laden und
im Designer und Server installieren
http://openntf.org/main.nsf/project.xsp?r=project/org.openntf.junit.xsp
9. Ähm…. und mein Team?
• Das kostet doch mehr Zeit!
• So haben wir noch nie entwickelt
• Da gibt es X Einträge im Web, die
belegen, dass TDD bullDINGS ist!
10. Zeit für ein Experiment
• WebGate Consulting hat das Projekt
“goodmeeting.biz” streng nach TDD
durchgeführt
• Mitten drin mussten wir einen Teil refactoren
– War in 60 Minuten gemacht, ohne
Fehler!
11. Warum ich TDD liebe
• Ich bin relaxter, weil ich weiss, dass der
Code den ich geschrieben habe so
funktioniert, wie ich mir das vorgestellt
habe!
12. Und das kann man auch noch machen!
• Neues API kennen lernen -> Schreib doch
ein paar Tests
• Verstehen was mein Mitarbeiter wollte ->
Lies die Tests
13. Literatur
• Test Driven Development by Example
(Kent Beck)
http://www.amazon.de/Driven-Development-Example-Addison-Wesley-
Signature/dp/0321146530/ref=sr_1_1?ie=UTF8&qid=1415217300&sr=8-1&keywords=tdd+by+example
14. 41. DNUG Konferenz · 11./12. November 2014 · Leipzig
Bitte nehmen Sie sich die Zeit,
um diesen Vortrag zu bewerten
(A6-Block in Ihren Konferenzunterlagen)
Rückgabe
Geben Sie das ausgefüllte Bewertungsblatt bei
dem Moderator/Betreuer Ihres Vortrages bzw.
am Tagungscounter der DNUG ab.
Verlosung
Unter allen Teilnehmern
wird ein iPod nano verlost.