Найти тему
теплые советы

Программное обеспечение. Введение в модульное тестирование. Технология TDD

Гибкая разработка приложений является одной из самых модных и современных технологий программирования на сегодняшний день. В основе данного подхода лежит модель взаимозаменяемости отдельных частей программного кода, на основе принципов полиморфизма, заложенного в объектно-ориентированном стиле программирования. С каждым годом в мире, становится все больше специалистов, которые используют правила и принципы быстрой разработки приложений в своей повседневной деятельности. Более того, прикладные инструменты современного бизнес-программирования, на базе языков C# и Java, такие как MS Visual Studio и Oracle JDeveloper поддерживают в своем составе инструменты, позволяющие осуществлять гибкую разработку и модульное тестирование. Рассмотрим один из элементов гибкой разработки приложений – программирование, которое управляется написанием тестов.

Итак, данная технология с одной стороны позволила значительно ускорить написание программного кода, с другой стороны, существенно повысить его качество. Разработчики сначала пишут модульные тесты, а затем - программный код, который пытается покрыть всю, заданную тестами функциональность. Такого рода деятельность позволяет сконцентрироваться в конечном итоге на качестве выпускаемого программного продукта и бизнес требованиях. Рассмотрим основные этапы управляемой тестированием разработки, которые включают в себя:

1) Создание нового программного проекта, на одном из языков программирования, Java или C
2) Добавление к проекту нового модульного теста, с тестовыми функциями, объявленными с помощью специфических сигнатур, таких как [TestMethod] на языке программирования C
3) Определение необходимой функциональности, которая будет тестироваться в программном коде и написания всего множество тестовых функций.
4) Непосредственная реализация проекта, с проверкой работоспособности полностью всего тестового кода.


Как можно заметить, подобный подход к разработке приложений позволяет получать качественные решения и управлять сложностью в современных проектах, требующих быстрого и качественного результата. Программирование с опорой на тесты позволяет эффективно добавлять к проектам новую функциональность, с минимизацией рисков разрушения поведения, созданного ранее. Один из основоположников экстремального программирования, Кент Бек, оценил разработку посредством написания тестов, как важнейшее достижение объектно-ориентированных языков последнего десятилетия.