Whole repository is divided into couple modules covering various examples and testing techniques.
Each module contains its own README.md
file which dives into details particular example. In details contains following:
- Introduction - covers basic information about domain
- Code - what are main code classes we are testing and what they actually do
- Bad Tests - testing code which is not written in most efficient way. Main purpose is to present most common mistakes
- 💩 Smells - comments whats wrong with this particular
Bad*
examples
- 💩 Smells - comments whats wrong with this particular
- Better Tests - alternative version of testing code, which should be better. It fixes smells and shows good practices (sometimes opinionated)
- 👍 Good practices - comments exactly, whats better and what mistakes has been resolved
Bad*
- classes representing common mistakes and anti-patternsBetter*
- alternative classes showing how above examples could be easily improved
-
/** All comments storing additional information withing presented example **/
-
// Alternative version of code **/
-
Hello tests - your first test
-
Fifty shades of smog - dealing with multiple data
-
Only good weather data, (no) exceptions - testing exceptions
-
Gone with the wind! (anemic vs domain) - simple difference between anemic and domain models
-
Where to fly my kite? - TDD step by step