14

Click here to load reader

Das funktionierte doch schon einmal! - JUnit Testing in XPages

Embed Size (px)

Citation preview

Page 1: Das funktionierte doch schon einmal! - JUnit Testing in XPages

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

[email protected]

@guedeWebGate

Page 2: Das funktionierte doch schon einmal! - JUnit Testing in XPages

Freitags, 15.07 Uhr

Noch diese kleine

Änderung, dann ist der

Kunde zufrieden!

Page 3: Das funktionierte doch schon einmal! - JUnit Testing in XPages

Am Montag danach …. 11:22

Es läuft aber gar nix mehr!

Page 4: Das funktionierte doch schon einmal! - JUnit Testing in XPages

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

Page 5: Das funktionierte doch schon einmal! - JUnit Testing in XPages

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)

Page 6: Das funktionierte doch schon einmal! - JUnit Testing in XPages

TDD – Schreib einen Test

Ein Test dokumentiert ganz genau was mein Code für ein Resultat habensoll

int amountCHF = bank.changeEuro2CHF( 100 );

assertEquals( 120, amountCHF)

PS: dieser Test wird von der Schweizer Nationalbank jeden Tag durchgeführt

Page 7: Das funktionierte doch schon einmal! - JUnit Testing in XPages

Und das kann man in XPages machen?

• YES – OpenNTF sei dank oder so ;)

• org.openntf.junit.xsp herunter laden und

im Designer und Server installierenhttp://openntf.org/main.nsf/project.xsp?r=project/org.openntf.junit.xsp

Page 8: Das funktionierte doch schon einmal! - JUnit Testing in XPages

DEMO

Page 9: Das funktionierte doch schon einmal! - JUnit Testing in XPages

Ä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!

Page 10: Das funktionierte doch schon einmal! - JUnit Testing in XPages

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, ohneFehler!

Page 11: Das funktionierte doch schon einmal! - JUnit Testing in XPages

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!

Page 12: Das funktionierte doch schon einmal! - JUnit Testing in XPages

Und das kann man auch noch machen!

• Neues API kennen lernen -> Schreib doch

ein paar Tests

• Verstehen was mein Mitarbeiter wollte ->

Lies die Tests

Page 13: Das funktionierte doch schon einmal! - JUnit Testing in XPages

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

Page 14: Das funktionierte doch schon einmal! - JUnit Testing in XPages

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.