2009-11-26 2 views
2

Я только начинаю понимать BDD и RSpec, и одна вещь, с которой я действительно сталкиваюсь, - это выяснить, насколько я должен быть с моим тестированием.Насколько тщательно вы должны проходить тестирование RSpec?

Я просто не понимаю, насколько мелкомасштабное мое тестирование должно быть полезным, но не удвоенным временем разработки.

Это вопрос выбора? Или существует какой-то общий стандарт для того, что нужно тестировать?

ответ

5

Здесь есть несколько факторов.

  1. Спецпокрытие должно быть самым большим для наиболее важных функций и вещей, которые могут сломаться.
  2. Спецификации должны выражать намерение разработчика. Не пишите спецификации для тривиальных вещей, которые вы или кто-то еще может изменить позже.
  3. Тестирование не выполняется. Вы должны иметь возможность изменить внутреннюю реализацию класса и все еще передавать спецификации. Это упрощает рефакторинг.
  4. Каждый раз, когда вы исправляете ошибки, добавьте спецификации, чтобы предотвратить ошибку при регрессии.

Мне полезно подумать о тестах/характеристиках в качестве защитной сетки. Я хочу, чтобы спецификация терпила неудачу, если другой dev (или я) сломал что-то, что я потратил время, чтобы сделать работу. Я не хочу, чтобы они тратили много времени на изменение спецификаций для вещей, которые не имеют большого значения. Я также не хочу препятствовать им улучшать приложение из-за спецификаций, которые проверяют вещи, которые не были важны для меня при написании кода.

Смежные вопросы