my road to test driven development
DESCRIPTION
In which I give a short introduction to unit testing, and then outline the story that finally turned on the light bulb about real test-driven development and test first for me. The third part of the talk gives an introduction to Dependency Injection (DI), an integral part to unit testing.TRANSCRIPT
![Page 1: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/1.jpg)
My Road To Test Driven
Development: A Story
Gerard Sychay@oinkpug
08/19/2009
![Page 2: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/2.jpg)
My name is Gerard Sychay.
![Page 3: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/3.jpg)
Zipscene.com
![Page 4: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/4.jpg)
Cincinnati Coworks
![Page 5: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/5.jpg)
Are you unit testing?
![Page 6: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/6.jpg)
Are you developing unit tests first?
![Page 7: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/7.jpg)
(Very) Short introduction to unit testing1.
“Discovering” Test Driven Development2.2.
Dependency Injection FTW!3.
![Page 8: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/8.jpg)
PHPUnit
(Very) Short introduction to unit testing1.
![Page 9: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/9.jpg)
(Very) Short introduction to unit testing1.
![Page 10: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/10.jpg)
(Very) Short introduction to unit testing1.
![Page 11: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/11.jpg)
“Red, green, refactor.”
Discovering Test Driven Development2.
![Page 12: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/12.jpg)
That’s nice, but…
Discovering Test Driven Development2.Discovering Test Driven Development2.
![Page 13: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/13.jpg)
Discovering Test Driven Development2.
![Page 14: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/14.jpg)
Then, one day…
Discovering Test Driven Development2.
![Page 15: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/15.jpg)
Problem: Does this event “exist?”
Discovering Test Driven Development2.
![Page 16: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/16.jpg)
Discovering Test Driven Development2.Business Requirements:
1. If two events have the same name AND same location, they are the same event. Merge.
2. Else, if two events have the same location, AND they occur within 1 hour of each other, they are the same event. Merge.
![Page 17: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/17.jpg)
Discovering Test Driven Development2.
![Page 18: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/18.jpg)
Discovering Test Driven Development2.
![Page 19: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/19.jpg)
Discovering Test Driven Development2.
![Page 20: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/20.jpg)
Discovering Test Driven Development2.
![Page 21: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/21.jpg)
Discovering Test Driven Development2.
![Page 22: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/22.jpg)
Discovering Test Driven Development2.
![Page 23: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/23.jpg)
Discovering Test Driven Development2.Discovering Test Driven Development2.
![Page 24: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/24.jpg)
Discovering Test Driven Development2.Business Requirements:
3. To merge two events, for each field, keep the longer of the two fields. For DateTimes, keep the earlier occurrence.
![Page 25: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/25.jpg)
Discovering Test Driven Development2.
![Page 26: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/26.jpg)
Discovering Test Driven Development2.Discovering Test Driven Development2.
![Page 27: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/27.jpg)
Discovering Test Driven Development2.Discovering Test Driven Development2.
![Page 28: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/28.jpg)
“Is that bug really fixed?”
Discovering Test Driven Development2.
![Page 29: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/29.jpg)
“Hey, I thought that bug was fixed.”
Discovering Test Driven Development2.
![Page 30: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/30.jpg)
Discovering Test Driven Development2.Discovering Test Driven Development2.Discovering Test Driven Development2.
![Page 31: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/31.jpg)
Discovering Test Driven Development2.Discovering Test Driven Development2.
![Page 32: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/32.jpg)
Requirements Driven Development
Discovering Test Driven Development2.
![Page 33: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/33.jpg)
That’s nice, but…
Discovering Test Driven Development2.
![Page 34: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/34.jpg)
Dependency Injection FTW!3.
![Page 35: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/35.jpg)
Dependency Injection FTW!3.
![Page 36: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/36.jpg)
MVC, n’est pas?
Dependency Injection FTW!3.
![Page 37: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/37.jpg)
Dependency Injection FTW!3.
![Page 38: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/38.jpg)
Dependency Injection FTW!
Dependency Injection FTW!3.
![Page 39: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/39.jpg)
Dependency Injection FTW!3.Dependency Injection FTW!3.
![Page 40: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/40.jpg)
Dependency Injection FTW!3.Dependency Injection FTW!3.
![Page 41: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/41.jpg)
Business Requirements:
4. Profit!
Dependency Injection FTW!3.
![Page 42: My Road To Test Driven Development](https://reader033.vdocuments.mx/reader033/viewer/2022052821/5541f913b4c905a8148b45bb/html5/thumbnails/42.jpg)
Thanks!Questions!Comments!
@hellogerardstraylightrun.net
© 2009. Some rights reserved.