Understanding legacy untested code via Exporatory TDD technique
Test suite and code it tests are in fact symmetry of each other: both are double checks of each other. Therefore, it should be possible to derive tests from the code as much as it is possible to derive code from the tests one test at a time. This is not a pleasant process of course. But turns out that there are techniques that allow one to derive tests one at a time from the code with full confidence and in small increments until there is nothing else to test. I want to tell you about one such technique and my experiences of using it.