test-driven javascript development ipc
DESCRIPTION
Die Entwicklung mit JavaScript ist schon seit längerer Zeit gängiger Standard, und somit wurden auch bekannte Programmierstandards und Entwicklungsformen auf diese Sprache transferiert. In dieser Session auf der IPC/Webinale 12 wurden die Grundlagen für testgetriebene Entwicklung mit JavaScript gezeigt und anhand eines Beispiels vorgeführt.TRANSCRIPT
![Page 1: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/1.jpg)
Martin Ruprecht, 06. Juni 2012
Test-Driven JavaScriptDevelopment
Montag, 11. Juni 2012
![Page 2: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/2.jpg)
Guten Morgen!
• Martin Ruprecht
• Entwickler bei Mayflower GmbH seit 2008
• @mrupilo
Montag, 11. Juni 2012
![Page 3: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/3.jpg)
Java ToolsMontag, 11. Juni 2012
![Page 4: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/4.jpg)
JavaScript ToolsMontag, 11. Juni 2012
![Page 5: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/5.jpg)
„Um professionell JavaScript
entwickeln zu können,
muss ich
Tool- und Test-getrieben arbeiten!“
Montag, 11. Juni 2012
![Page 6: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/6.jpg)
jsTestDriver
Montag, 11. Juni 2012
![Page 7: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/7.jpg)
Server & TestframeworkMontag, 11. Juni 2012
![Page 8: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/8.jpg)
Montag, 11. Juni 2012
![Page 9: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/9.jpg)
Demo!
Montag, 11. Juni 2012
![Page 10: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/10.jpg)
Test-Driven
Development!
Montag, 11. Juni 2012
![Page 11: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/11.jpg)
Tests sind Feedback!Montag, 11. Juni 2012
![Page 12: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/12.jpg)
Tests sind Doku!Montag, 11. Juni 2012
![Page 13: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/13.jpg)
Tests als Basis für CIMontag, 11. Juni 2012
![Page 14: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/14.jpg)
TDD feels good!Montag, 11. Juni 2012
![Page 15: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/15.jpg)
„Der TDD Workflow muss rocken!“
Montag, 11. Juni 2012
![Page 16: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/16.jpg)
Tests müssen schnell sein!Montag, 11. Juni 2012
![Page 17: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/17.jpg)
Tests müssen isoliert von einander laufen!
Montag, 11. Juni 2012
![Page 18: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/18.jpg)
Tests müssen wiederholbar sein!
Montag, 11. Juni 2012
![Page 19: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/19.jpg)
„Bei TDD muss ich mein Denken umkehren!“
Montag, 11. Juni 2012
![Page 20: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/20.jpg)
TDD MantraMontag, 11. Juni 2012
![Page 21: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/21.jpg)
Start simple!Montag, 11. Juni 2012
![Page 22: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/22.jpg)
Test fail!Montag, 11. Juni 2012
![Page 23: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/23.jpg)
Implementiere die Funktionalität in der einfachsten Form
Montag, 11. Juni 2012
![Page 24: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/24.jpg)
Test win!Montag, 11. Juni 2012
![Page 25: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/25.jpg)
Refactoring!Montag, 11. Juni 2012
![Page 26: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/26.jpg)
... Montag, 11. Juni 2012
![Page 27: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/27.jpg)
Ergebnis: Clean Code that works!
Montag, 11. Juni 2012
![Page 28: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/28.jpg)
Demo!
Montag, 11. Juni 2012
![Page 29: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/29.jpg)
Fazit• Professionelle Entwicklung erfolgt Tool- und
Test-getrieben.
• Test-Driven Development macht nicht nur Spaß sondern steigert die Qualität enorm.
• RED / GREEN / REFACTOR
• Coding Katas bieten eine optimale Grundlage um TDD zu lernen / üben.
Montag, 11. Juni 2012
![Page 30: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/30.jpg)
Fragen?Montag, 11. Juni 2012
![Page 31: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/31.jpg)
Wie kann ich weitermachen?
• Mehr Infos zu jsTestDriver:
• Sebastian Springer, Qualitätssicherung bei Webprojekten (Salon 1 14.00 Uhr)
• Jakob Westhoff, JavaScript QA: jsTestDriver & sinon.js richtig nutzen (Salon 2 14.00 Uhr)
• Nimm teil an einem Coding Dojo / mache Coding Katas
Montag, 11. Juni 2012
![Page 32: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/32.jpg)
Literatur
• Test-Driven Development by Example, Kent Beck
• Test-Driven JavaScript Development, Christian Johansen
Montag, 11. Juni 2012
![Page 33: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/33.jpg)
Feedback please!
• https://joind.in/6653
• Twitter @mrupilo
Montag, 11. Juni 2012
![Page 34: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/34.jpg)
Vielen Dank für eure Aufmerksamkeit!
Montag, 11. Juni 2012
![Page 35: Test-Driven JavaScript Development IPC](https://reader033.vdocuments.mx/reader033/viewer/2022050720/54c7a5c84a7959e7478b4657/html5/thumbnails/35.jpg)
Bildnachweis• http://www.flickr.com/photos/ontario_wanderer/3496185271/sizes/z/in/photostream/
• http://www.flickr.com/photos/global-jet/483825828/sizes/z/in/photostream/
• http://www.flickr.com/photos/mortimer/3758383978/sizes/z/in/photostream/
• http://www.flickr.com/photos/estimmel/181914110/
• http://www.flickr.com/photos/mybigtrip/68011728/
• http://www.flickr.com/photos/ohsohappytogether/4102831371
• http://www.flickr.com/photos/gnislew/629816655
• http://www.flickr.com/photos/zerodoze/3254882752/sizes/m/in/photostream/
• http://www.flickr.com/photos/flrnt/457917184/sizes/z/in/photostream/
• http://www.flickr.com/photos/bohemiandolls/4662564268/sizes/z/in/photostream/
• http://www.flickr.com/photos/seandreilinger/133305683/sizes/z/in/photostream/
• http://www.flickr.com/photos/68114781@N04/6286488787/
• http://www.flickr.com/photos/mercurialn/2419237431/sizes/z/in/photostream/
• http://www.flickr.com/photos/42931449@N07/5397530925/sizes/z/in/photostream/
Montag, 11. Juni 2012