В какой момент лучше писать тесты? Вообще, существует три подхода:
- Тесты пишутся после кода
- Тесты пишутся вместе с кодом
- Тесты пишутся до кода
В этом уроке мы разберемся, в чем особенности каждого подхода.
Подход «Тесты после кода»
В некоторых ситуациях особого выбора нет. Например, при системном тестировании тесты должны имитировать поведение пользователей и выполнять действия в браузере. Такие тесты пишутся после кода.
В интеграционных, модульных и других тестах низкого уровня программист может выбирать из вариантов, описанных выше.
Подход «Тесты до кода»
Подход «писать тесты после кода» относится к наименее полезным. Разберемся, почему так. Сам процесс написания кода связан с постоянным запуском кода и проверкой того, что он работает. В самых простых задачах, этот запуск происходит довольно быстро:
# Легко запустить и легко проверить результаты
capitalize('hello') # Hello
В реальном коде подготовка данных для проверки работы кода может занимать минуты и десятки минут. С другой стороны, результатом работы проверяемого кода может быть что-то сложное — например, множество записей в базе данных или вывод определенной непростой структуры.