Как вы разрабатываете приложение outside-in Rails с использованием Cucumber и RSpec?

StackOverflow https://stackoverflow.com/questions/1072035

Вопрос

Я только начинаю использовать BDD в приложении Rails, но я не уверен, каковы лучшие практики и рабочие процессы?И какие еще вещи, которые мне действительно нужны для тестирования моего проекта, такие как определения шагов, контроллеры, модели и представления?Нужно ли мне тестировать все это?

Это было полезно?

Решение

Обычно я думаю о Cucumber как о способе проведения интеграционного тестирования вашего приложения.В сочетании с Webrat вы можете отлично тестировать рабочие процессы пользователей, представления и так далее.Для модульных тестов вам захочется спуститься на более низкий уровень и протестировать свои модели только с помощью rspec.Возможно, вы также захотите провести некоторые функциональные тесты на контроллерах, и я, вероятно, тоже не стал бы использовать Cucumber для этого.

Вот пара видеороликов:

Другие советы

У Райана Бейтса есть несколько хороших роликов на эти темы:

Это может быть делом вкуса, но, опробовав Rspec, я предпочитаю использовать встроенную платформу тестирования Rails вместе с драгоценным камнем под названием Следовало Бы.На мой взгляд, эта комбинация позволяет вам писать гораздо более четкие, емкие и понятные тесты, чем Rspec на сегодняшний день.Но не все согласились бы с этим.

Должно было контексты позволяет вам организовать ваши тесты в логические иерархии, что действительно помогает, когда вы пытаетесь протестировать все возможные пути в какой-нибудь сумасшедшей, ветвящейся ситуации, например, пользователь входит в систему с правильным pw, неправильным pw, правильным pw, но регистрация не подтверждена и т.д.

Кроме того, обязательно установите ЗенТест драгоценный камень.Это позволяет вам просто выполнить команду $ autotest и ваши тесты будут запускаться автоматически каждый раз, когда вы меняете файл.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top