Каким будет минимальный пример тестирования, ориентированного на разработку, который демонстрирует достаточную сложность, чтобы доказать, что он стоит разработчикам, которые его оспаривают? - PullRequest
0 голосов
/ 03 марта 2020

Во-первых, я не пытаюсь здесь сказать, что TDD - это Be All и End All разработки программного обеспечения.

Я работаю в очень унаследованной системе, которая не имеет никаких усилий в момент собирается уйти в отставку или улучшить его. Это среда Java, с Spring, знаете ли, основа c. Это не преувеличение, что эта система получила около 1021 * притока в диапазоне миллионов долларов (так что вы можете понять ее сложность / размер).

За последние 8 месяцев многие исправления выпущенные в этой системе возвращались снова и снова, и команда, которая работает над ней, похоже, не нашла выхода из этого l oop. Я был привлечен, чтобы помочь им в модернизации этой устаревшей архитектуры, но я бы предпочел сделать это с TDD, потому что большинство классов в этой системе:

  • Довольно большой. Большинство классов в этой системе содержат более 6 тыс. Строк кода
  • Это устаревший, полностью недокументированный код
  • На самом деле мы вообще ничего не исправляем, просто исправляем ошибки, исправляем ошибки
  • Нет алгоритмов, нет шаблонов, ничего в этом коде не является оптимальным. Это все, если / else заявления

То, что я ищу здесь, - это минимальное представление о том, что мои коллеги-разработчики сочли бы «достаточным», чтобы предоставить всеобъемлющий опыт того, что происходит, когда мы работаем над большая система, в которой у нас нет полной видимости, и изменения устраняют неожиданные вещи, когда кодирование исправлений / улучшений для такой системы без TDD. Какой минимальной версии будет достаточно (если у вас будет больше опыта с ней).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...