Какая подходящая среда тестирования для Rails 3?

Я работаю с Ruby On Rails в течение последнего года. Но не мог работать над модульным тестированием. Теперь мне нужно написать код модульного тестирования. Какая среда тестирования хороша и почему?

Есть ли хороший учебник для этого?

Моя конфигурация системы: Ruby 1.9.2, Rails 3, Ubuntu 10


person Rubyist    schedule 13.05.2011    source источник
comment
Да, есть несколько вопросов с нулевым ответом. Я просмотрел некоторые ответы, как вы меня просили, и оставил свои комментарии к ним.   -  person Zabba    schedule 13.05.2011


Ответы (2)


Первый совет: попробуйте обновиться до Rails 5.x. Хорошей практикой является всегда оставлять вашу систему чистой и безупречной от третьих лиц.

Документация по рельсам всегда будет вашим лучшим другом: http://guides.rubyonrails.org/v3.2/testing.html

В последнем случае, если вы не можете обновиться, вы можете использовать гемы Minitest/Rspec, в старых версиях совместимые с текущими версиями разработки.

Для проведения интеграционного тестирования вы можете попробовать использовать Capybara или Google Chrome Headless.

Вы можете посмотреть, как проводят тесты некоторые крупные проекты, например сайт RubyGems, написанный на RoR и открытый в Github: https://github.com/rubygems/rubygems.org

person Marlon Henry Schweigert    schedule 28.01.2018

Я использую Rspec последние два года, и, с моей точки зрения, это самая простая среда тестирования для Ruby, которую я когда-либо использовал.

В Rspec вы должны создавать объекты своих моделей с помощью factories и использовать их в скрипте.

В Rspec есть только 3 блока для записи: describe, context и it.

Обратитесь — https://relishapp.com/rspec/rspec-rails/v/3-0/docs/model-specs

person rhunal    schedule 29.01.2018
comment
Можно утверждать, что минитест самый простой. Он не требует изучения фабрик и каких-либо новых DSL. Это просто рубин. - person Sergio Tulentsev; 29.01.2018
comment
Да, но я использую rspec два года и до сих пор использую его, а также, если есть какие-либо проблемы, связанные с rspec, решение легко получить при переполнении стека. - person rhunal; 29.01.2018