Как заставить JS кликать с помощью веб-драйвера poltergeist?

Когда я запускаю тест с драйвером chrome - он проходит.

Когда я запускаю его с помощью poltergeist - он пытается щелкнуть мышью в формате HTML, и у меня появляется ошибка:

 ActionController::UnknownFormat:
   ActionController::UnknownFormat

controller.rb def features newspaper = Newspaper.find(params[:id]) respond_to do |format| format.js { render locals: { newspaper: newspaper } } end end

view.html.haml = link_to features_newspaper_path(newspaper), class: %w(qa-edit-features), format: 'js', remote: true feature_spec.rb it 'enable newspaper hilsninger features', js: true do find('.qa-edit-features').click end spec_helper.rb

require 'capybara/rspec' require 'capybara/poltergeist' Capybara.register_driver :chrome do |app| Capybara::Selenium::Driver.new(app, browser: :chrome) end if ENV['BROWSER'] == 'google-chrome' Capybara.javascript_driver = :chrome else Capybara.javascript_driver = :poltergeist end

1 ответ

Скорее всего, это вызвано ошибкой JS на вашей странице (или использованием методов ES2015+, не поддерживаемых Poltergeist), приводящей к сбою анализа JS и невозможности установки UJS-обработчиков rails. Убедитесь, что ваш конфигурационный файл регистрации драйвера Poltergeist ( https://github.com/teampoltergeist/poltergeist) имеет js_errors: true в этом и он должен показать вам ошибку JS.

Другие вопросы по тегам