我有一個使用了poltergeist和水豚的大型測試套件。我不斷收到以下錯誤:當js_errors:false時,Poltergeist會拋出JS錯誤
One or more errors were raised in the Javascript code on the page. If you don't care about
these errors, you can ignore them by setting js_errors: false in your Poltergeist
configuration (see documentation for details).
我很確定我設置了js_errors:false,但我仍然收到錯誤。我意識到最佳解決方案是修復JS,但我繼承了遺留代碼,修復了錯誤超出了我的角色範圍。我的規範助手文件看起來像這樣:
ENV["RAILS_ENV"] ||= 'test'
require File.expand_path("../../config/environment", __FILE__)
require 'rspec/rails'
require 'rspec/autorun'
require 'capybara/poltergeist'
Capybara.javascript_driver = :poltergeist
Capybara.register_driver :poltergeist do |app|
Capybara::Poltergeist::Driver.new(app, {js_errors: false})
end
Capybara.current_driver = :poltergeist
Capybara.configure do |config|
config.match = :one
config.exact_options = true
config.ignore_hidden_elements = true
config.visible_text_only = true
end
Dir[Rails.root.join("spec/support/**/*.rb")].each {|f| require f}
RSpec.configure do |config|
config.infer_base_class_for_anonymous_controllers = false
config.order = "random"
end
我很困惑要去哪裏或者我是否忽略了JS錯誤。讓我知道是否有其他任何我可能忽略或忽略的信息。謝謝你的時間。
您能否在答案中添加更多解釋? – 2014-11-12 20:40:27
這與問題本身的代碼完全相同。 1.8.7 hashrocket語法:key => value與key:value相同。 – HaaR 2015-02-27 11:51:12
這個答案有誤導性。 ':js_errors => false'與'js_errors:false'相同。然而刪除選項散列中的其他參數,只是包括這一個修正了我的錯誤。 – Sean 2015-04-14 09:41:49