Оглавление:
- Определение - Что означает разработка через тестирование (TDD)?
- Techopedia объясняет разработку через тестирование (TDD)
Определение - Что означает разработка через тестирование (TDD)?
Разработка через тестирование (TDD) - это подход к разработке программного обеспечения, при котором тест пишется до написания кода. Как только новый код проходит тестирование, он подвергается рефакторингу в соответствии с приемлемым стандартом.
TDD обеспечивает тщательное модульное тестирование исходного кода и приводит к модульному, гибкому и расширяемому коду. Он фокусируется на написании только кода, необходимого для прохождения тестов, что делает дизайн простым и понятным.
Techopedia объясняет разработку через тестирование (TDD)
TDD позволяет программисту делать небольшие шаги при написании программного обеспечения. Тест написан до тестирования функциональности и гарантирует, что приложение пригодно для тестирования. Тестирование небольшого объема кода выполняется для обнаружения ошибок, которые возникают в тестируемом коде. Затем реализуется функциональность. Это называется «красный зеленый рефакторинг», где красный означает сбой, а зеленый показывает пропуск. Эти шаги затем повторяются. Первая цель программиста - сосредоточиться на поставленной задаче и выполнить ее.
Различные этапы цикла разработки на основе тестирования:
- Добавить тест: каждая новая функция в TDD начинается с теста, который должен завершиться неудачей, поскольку он вводится в действие до того, как будут реализованы какие-либо функции. Основным требованием для написания теста перед реализацией функции является четкое понимание требования разработчиком. Это достигается с помощью пользовательских историй и сценариев использования. Следовательно, разработчик понимает требование перед написанием программного кода.
- Запустите все тесты и проверьте, не сработал ли новый код: это гарантирует правильную работу тестового набора и что новый тест не проходит по ошибке без какого-либо нового кода. Этот шаг также проверяет тест и исключает возможность того, что новый тест всегда проходит.
- Написание кода. Следующий шаг - написание кода, который очищает тест. Новый код не идеален, но позже изменен в соответствии с требованиями. Он просто предназначен для тестирования и не включает в себя другие функции.
- Запускать автоматические тесты: если каждый созданный тестовый пример легко проходит тест, это означает, что код соответствует всем необходимым спецификациям. Следовательно, последний этап цикла может быть начат.
- Код рефакторинга: Это похоже на удаление дублирования. Рефакторинг не вредит существующей функциональности и помогает устранить дублирование между рабочим и тестовым кодами. Код теперь очищается по мере необходимости.
- Повтор: цикл повторяется, как и в предыдущих случаях, с новым тестом. Основным требованием является то, что размер шагов должен быть небольшим, примерно от 1 до 10 правок между каждым запуском теста. Если новый код не удовлетворяет новому тесту, программист должен выполнить дополнительную отладку. Непрерывная интеграция обеспечивает обратимые контрольные точки.
