Last Updated: February 25, 2016
·
833
· jecnua

My approach to TDD learning

Everywhere on the Internet you can find articles about “how to use junit” or “make your first unit test” but none about “Which approach to take to learn TDD”.
I think that following a tutorial that teaches you how to make a unit test without knowing when, where and how use it, it's the wrong approach. So I spent some time building a path, a road to follow.
This arguments/resources are in order, meaning that I found (maybe later at my own expenses) that learning about these topic in this order is the best approach I could take.

  1. Learn about Seams (not the Framework but the concept): If you have access to this book “Working Effectively with Legacy Code” by Micheal C. Feathers in a near library there is a good passage with an explanation about them. But I think you can easily find some info online.
  2. Learn about The Factory Patterns: You should know at least this two patterns to follow how the instantiation code need to be separated from the business code.
  3. Learn about Dependency Injection: This article is probably all you need to understand the concept (read all the linked resources too): http://martinfowler.com/articles/injection.html
  4. See some video about how to correctly structure your code: http://www.youtube.com/watch?feature=player_embedded&v=wEhu57pih5w http://www.youtube.com/watch?feature=player_embedded&v=RlfLCWKxHJ0 http://www.youtube.com/watch?feature=player_embedded&v=-FRm3VPhseI http://www.youtube.com/watch?feature=player_embedded&v=4F72VULWFvc All these videos can be found here: http://misko.hevery.com/presentations/
  5. First Unit Test?