Я только что поговорил с моим ведущим разработчиком, который не согласился с тем, что модульные тесты - все, что необходимо или важно. По его мнению, функциональные тесты с достаточно высоким охватом кода должны быть достаточными, поскольку любые внутренние рефакторинги (изменения интерфейса и т.д.) Не приведут к необходимости тестирования или повторной проверки.
Я попытался объяснить, но не очень далеко, и думал, что вы, ребята, могли бы сделать лучше.;-) Итак...
Каковы веские причины для кода unit test, который функциональные тесты не предлагают? Какие опасности существуют, если у вас есть функциональные тесты?
Изменить # 1 Спасибо за все замечательные ответы. Я хотел добавить, что функциональные тесты я имею в виду не только тесты всего продукта, но и тесты на модули внутри продукта, а не на низком уровне unit test с издевательским при необходимости и т.д. что наши функциональные тесты являются автоматическими и постоянно работают, но они занимают больше времени, чем единичные тесты (что является одним из больших преимуществ модульных тестов).
Мне нравится пример кирпича и дома. Я думаю, что мой ведущий разработчик говорит, что тестирование стен дома достаточно, вам не нужно проверять отдельные кирпичи...: -)