#ruby-on-rails #rspec #cucumber #capybara #rspec-rails
#ruby-on-rails #rspec #cucumber #capybara #rspec-rails
Вопрос:
Признание: я никогда не писал ни одного теста для Rails.
Я установил драгоценные камни cucumber, rspec, capybara, factory girl. Запуск Rails 3.1.
Я не уверен, где создать новый тестовый файл или как его назвать.
Спасибо за ваше терпение.
Ответ №1:
У Майкла Хартла есть хороший учебник по Rails, который в основном ориентирован на тестирование:
http://ruby.railstutorial.org/
Вы, вероятно, знаете большую часть этого, но это укажет вам правильное направление.
Вот Rails, выполненный на Cucumber:
http://railscasts.com/episodes/155-beginning-with-cucumber
Вот RSpec Rails Cast:
http://railscasts.com/episodes/71-testing-controllers-with-rspec
Вот несколько примеров Cucumber:
https://github.com/cucumber/cucumber/tree/master/examples/i18n
Надеюсь, это поможет!
Ответ №2:
после установки rspec и cucumber необходимо выполнить следующие команды
rails генерирует rspec: установка для rspec
первая команда настроит rails generate command и создаст каталог спецификаций, который будет содержать тесты для ваших моделей, контроллеров, представлений. в соответствующем каталоге вы можете написать тест rspec
например. Если у вас есть модель пользователя, тогда будут введены спецификации для пользователя
spec/models/user_spec.rb
вот и все
для запуска этих тестов используйте
спецификация rspec/models/user_spec.rb
который выведет, пройдены ли тесты или нет
cucumber описывает поведение приложения
и rspec описывает поведение объекта
rails генерирует cucumber: установка для cucumber
который создаст каталог функций в корне вашего приложения
внутри этого вы можете написать огуречный тест.расширение функции
например. Если в вашем приложении есть такая функция, как создание пользователя, эта функция будет включена
функции/файл creating_user.feature
и определение шага для этой функции будет включено
функции/step_definitions/create_user_steps.rb
ну, это просто короткая направляющая, которую вы можете использовать по следующим ссылкам
для cucumber http://loudcoding.com/posts/quick-tutorial-starting-with-cucumber-and-capybara-bdd-on-rails-project /
Ответ №3:
Подумайте, как люди чаще всего используют ваше приложение. Напишите тест для «счастливого пути», игнорируя любые крайние случаи.
Затем напишите тесты для частей, которые, скорее всего, сломаются.