Подтвердить что ты не робот

Тестирование просмотров JavaScript в Rails

Каков наилучший способ проверить просмотры JavaScript (проверить, работает ли страница JavaScript на JavaScript) в Rails?

Итак, скажем, у меня есть страница с именем /users/new, которая содержит форму, которая что-то делает. Я бы хотел, чтобы он отправил форму, и инструмент тестирования JavaScript даст мне знать, если эта страница сломается или нет. Каков наилучший способ сделать это?

Я столкнулся с тремя вариантами тестирования:

Первые два в основном существуют для BDD и изолированного тестирования. Последнее больше для того, что я ищу, но Я не хочу иметь отдельную тестовую установку для JavaScript BDD и тестирования интеграции.

Есть ли у кого-то лучшее решение?

4b9b3361

Ответ 1

Если вы используете RSpec, вы можете использовать Capybara в тесте интеграции RSpec:

spec/requests/my_spec.rb:

describe "my test", :js => true do
  it "should do something" do
    visit '/some/path'

    click_on 'Submit'

    page.should have_content 'Congratulations!'
  end
end

Не забудьте установить Capybara.javascript_driver = :webkit в spec_helper.rb.

Ответ 2

Проверьте проект чайной ложки на github.

https://github.com/modeset/teaspoon

Он поддерживает Mocha, Jasmine и QUnit.. имеет хорошую поддержку для бесконтактного использования ваших спецификаций с помощью PhantomJS (или Selenium Webdriver) и позволяет использовать полный конвейер Rails (coffeescript, fixtures и т.д.).

Кроме того, это сильно повлияло на мой опыт работы с другими тестовыми участниками с использованием Rails.