我有一个使用了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