I'm looking for an online introduction to unit testing and TDD. I have virtually no experience with TDD, unit testing, or any other agile methodology. My development environment is C++ on Linux. If there's a quality introduction to unit testing and TDD that uses C++ as the example language, that'd be great. If not then a general introduction in any old language and a more advanced tutorial using C++ would suffice.
“Test-driven development” refers to a style of programming in which three activities are tightly interwoven: coding, testing (in the form of writing unit tests) and design (in the form of refactoring).
For the introduction to TDD, the bowling game episode is very nice, as it demonstrate how the tests drive the design. Then, here are tutorials focusing on C++ frameworks for CppUnit, Boot::Test and CppCheck.
To help choosing a framework, Noel LLopis explored this jungle, albeit a long time ago, especially it dosen't mention GoogleTest or you can refer to this question.
Oh, and BTW, [automated] unit testing and TDD can be applied even in non agile environment.
The wikipedia page is pretty good and has several useful links to both online and non-online resources of reasonably high quality, including an online tutorial. Once you have the basics, for C++ specific issues you could start with this presentation (PDF).
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With