Недостатки разработки через тестирование?

Несколько недостатков (и test-driven я не утверждаю, что нет никаких unittest преимуществ - особенно при testdrivendesign написании основы проекта tdd - это сэкономило бы много testdrivendesign времени в конце):

  • Большие временные инвестиции. В простом случае вы теряете около 20% фактической реализации, но в сложных случаях вы теряете гораздо больше.
  • Дополнительная сложность. Для сложных случаев ваши тестовые примеры сложнее рассчитать, я бы посоветовал в таких случаях попробовать использовать автоматический эталонный код, который будет выполняться параллельно в отладочной версии / тестовом прогоне, вместо модульного теста простейших случаев.
  • Влияние дизайна. Иногда дизайн не ясен в начале и развивается по мере продвижения — это заставит вас переделать тест, что приведет к большим потерям времени. В этом случае я бы предложил отложить модульные тесты до тех пор, пока вы не разберетесь в дизайне.
  • Непрерывная настройка. Для структур данных и алгоритмов черного ящика модульные тесты были бы идеальными, но для алгоритмов, которые, как правило, изменяются, настраиваются или настраиваются, это может потребовать больших временных затрат, которые, как можно было бы утверждать, не оправданы. Так что используйте его, если считаете, что он действительно подходит для системы, и не навязывайте дизайн под TDD.

unit-testing

testing

tdd

2022-09-19T06:35:35+00:00
Вопросы с похожей тематикой, как у вопроса:

Недостатки разработки через тестирование?