Я надеюсь лучше понять процесс использования TDD с помощью приложения Rails 4.Использование тестовой разработки (TDD) с лесами Rails
Лучшее сообщение, которое я нашел по этому вопросу, - 15 TDD steps to create a Rails application. Он предлагает следующие шаги:
- эшафота модель
- создать модульное тестирование для модели -> тест не
- создать миграцию для модели -> тест проходит
- эшафота контроллер с желаемыми действиями
- создать функциональный тест для контроллера -> тест не
- добавить код в контроллер действия -> тест проходит
- создать функциональный тест для зрения -> тест не
- создать вид -> тест проходит
Такой подход приводит к гораздо больше работы, что просто rails g scaffold Foo
. Но использование scaffolder приведет к испытаниям (если они будут построены), которые пройдут, нарушив основной принцип TDD.
Я также прочитал, что не следует проверять функциональность, предоставляемую каркасом (например, модульные тесты для validates_presence_of
).
Что побуждает меня спрашивать: следует ли пропускать тесты модулей и функций для кода, генерируемого с помощью scaffolder, и просто проверять мои настройки или следовать шаблону «на каждый день», используемому автором блога?
Для чего вы хотите использовать строительные леса? Они генерируют только самый базовый код для выполнения CRUD-операций, и сгенерированные тесты далеки от того, чтобы их использовать. (Чтение ссылки, которую вы предоставили: с 2007 года, использует версию Rails, даже старше Rails 2, и ничего не говорит об использовании строительных лесов?) – yerforkferchips
@yerforkferchips: Да, я понимаю, что строительные леса являются довольно базовыми и что его тесты не являются полезно. Но с Rails 4 это достойная отправная точка, которая экономит время и устраняет упущения. Да, статья большая, но все еще описывает процесс. Я процитировал статью как отличие от лесов и возможного рабочего процесса. – craig