Я пришёл дать вам TDD
Вначале было слово и слово было «goto». Машины были большими и назывались ЭВМ, а программисты делали всё сами: определяли архитектуру программы, выбирали матметоды, писали код, тестировали, писали отчёты и сдавали заказчику. Они сидели над распечатками и пачками перфокарт, бегали с бобинами лент или коробами с дисками, вручную проверяли машинные расчёты и вносили изменения в программы. Это считалось нормой. Но, как и в любом виде деятельности, постепенно объемы программ росли, а в командах происходило разделение труда: архитекторы, кодировщики, энекейщики, тестировщики - специальностей становилось всё больше, взаимопонимания между ними - всё меньше, а время работы над софтом не сокращалось.
И пришёл Кент Бек и вернул тестирование на стадию разработки. Дал он людям двенадцать приёмов TDD, шаблоны программирования и юнит-тесты и назвал это «Экстремальным программированием» (XP). И стала его книга библией программистов, Test-Driven Development - новым стилем разработки, а Кент Бек - пророком его. На английском языке книга вышла ровно 20 лет назад, но до сих пор остаётся хитом среди специализированных изданий.
Ничего особо хитрого в экстремальном программировании нет: те же люди, что писали и тестировали программу, делают всё то же, но по-другому - не пакетно, а непрерывно. То есть тест пишется до написания модуля, который он будет проверять. А само тестирование происходит не после начала «прогонов» программного блока на компьютере, а параллельно с его написанием.
Легендарная книга Кента Бека «Экстремальное программирование: разработка через тестирование» выпущена издательством «Питер» в серии «Библиотека программиста».