Специалисты «Ланит-Терком» на тренинге TDD
18 декабря 2009 – Санкт-Петербург, Васильевский остров, офис «Ланит-Терком», – Разработчики «Ланит-Терком» приняли участие в тренинге TDD - Test Driven Development (Разработка через тестирование). В тренинге участвовали Дарья Комольцева, Максим Журавлёв, Юрий Литвинов, Леонид Чистов и Екатерина Мосейко.
Тренинг по Test Driven Development помогает устранить неправильный подход к разработке. По словам организаторов, «разработчик, прошедший тренинг, уже никогда не будет прежним. Он станет «test-infected». TDD решает типичную проблему в разработке практически любого проекта - неконтролируемый рост количества дефектов, которые приводят к целому ряду нежелательных последствий.
TDD - это разработка через тестирование не только непосредственно кода, но и дизайна модуля. Тесты при этом составляются на основе спецификации, описывающей требования к программе. В основе подхода лежит наращивание функциональности маленькими простыми частями. Таким образом, реализуется только минимум, необходимый для прохождения очередного написанного теста. Разумеется, необходимо постоянно проводить рефакторинг получающегося кода. При этом подходе максимальными будут покрытие кода модульными тестами и соответствие модуля требованиям.
Сегодня модульные тесты используются во многих проектах, как традиционных, так и Agile. Высокую популярность они заслужили благодаря следующим преимуществам:
• позволяют находить дефекты на самой ранней стадии - непосредственно во время разработки модуля;
• проверяют систему на регрессию: однажды найденная ошибка больше никогда не проявится;
• могут быть запущены в любой момент одним нажатием кнопки;
• уменьшают время отладки и являются документацией на исходный код системы.
Дарья Комольцева рассказала о тренинге и его особенностях: «В ходе выполнения заданий "ведущий" постоянно корректировал ход наших мыслей в непривычную до сих пор сторону наращивания функциональности по мере надобности тестирования. В итоге, преодолевая технические и моральные трудности, мы с напарницей все же создали требуемое приложение методом TDD. Попутно мы на практике познакомились с концепцией парного программирования, это было одной из задач тренинга».
Леонид Чистов также поделился своими впечатлениями от тренинга: «Тренинг проводил специалист компании ScrumTrek Дмитрий Лобасев. Удалось узнать, в чем заключаются особенности, отличающие TDD от других подходов к разработке, и его сильные стороны. Тренинг позволил мне познакомиться с новым для меня подходом к разработке и тем самым расширить кругозор. Больше всего понравилась практическая его часть, позволившая опробовать TDD на конкретном примере».