我正在与Capybara一起使用RSpec。在标记为js: true
的测试中,它使用默认的javascript驱动程序(Selenium)。
测试本身通过(见下文),但我发现它打开了一个Firefox窗口,然后在运行测试时立即关闭它。正如您在下面看到的那样,测试非常简单,我在那里任何地方都没有save_and_open_page
。
谢谢!
# rails_helper
require "spec_helper"
require "rspec/rails"
require "capybara/rails"
require "capybara/rspec"
# Test
it "user can sign in", js: true do
visit root_path
click_tab("sign_up")
fill_in "session[email]", with: "grace@hopper.edu"
fill_in "session[password]", with: "gr4ce!"
click_submit
expect(current_path).to eq(home_index_path)
end
答案 0 :(得分:3)
这是因为Selenium驱动程序使用firefox在测试中执行javascript。您可以使用无头浏览器,例如phantom.js,它不会打开浏览器窗口。 poltergiest宝石可能就是你要找的东西。