Я собираюсь начать изучать разработку с помощью покрытия кода, и мне интересно, как это обычно согласуется с разработкой, управляемой тестами.
Является ли покрытие кода задним числом? Ваш процесс идет как-то вроде
- Написать тест для функциональности, которая будет реализована
- Запустите тест, убедитесь, что они не прошли
- Реализация функциональности
- Запустите тест, убедитесь, что они прошли
- Напишите больше тестов на функциональность, пока не будет получено 100% (или почти) покрытие кода
Или вы запускаете покрытие кода в самом конце после того, как были реализованы многочисленные функциональные части, а затем возвращаетесь и работаете для достижения 100% покрытия?
Третий вариант, о котором я могу подумать, - стремиться к 100% охвату, даже не реализовав функциональность.
Что из этого является наиболее распространенным и каковы преимущества?