我正在将我的Capybara测试套件从capybara-webkit转换为poltergeist。
-require 'capybara/webkit'
+require 'capybara/poltergeist'
-Capybara.javascript_driver = :webkit
+Capybara.javascript_driver = :poltergeist在运行我的测试时,第一次测试失败,并显示以下消息...
Failure/Error: Unable to find matching line from backtrace
ActionController::RoutingError:
No route matches [GET] "/assets/fonts/glyphicons-halflings-regular.ttf"经过一些调查,我发现了类似的问题here。
但是,我有一个手动安装的bootstrap.css。我按照第二个答案中的建议对路径进行了调整,并收到了与更新后的路径相同的消息。
在经历了一段时间和挫折之后,我意识到这只是我套件中第一个失败的测试,其余的都通过了。因此,我很自然地删除了第一个测试。现在“新”的第一个测试失败了,其余的都通过了。所以我把它们都删了。现在,没有一个失败了!测试很简单!结束了。
是什么让我的第一次测试失败?为什么剩下的都过去了?
如有需要,请提供更多信息。
发布于 2016-07-17 22:26:35
对此有两种可能的解决方案
答:您正在加载图像,而您可能不想这样做(加速测试等)
Capybara.register_driver :poltergeist do |app|
Capybara::Poltergeist::Driver.new(app,
:timeout => 60,
:phantomjs_logger => File.open(File::NULL), # silence JavaScript console.log
:phantomjs_options => %w(--load-images=false --ignore-ssl-errors=true),
)
endB.规格失败,因为您得到的是404,该资产未找到
# Gemfile
gem 'bootstrap-sass'然后把它包含在JavaScript的土地上
# assets/javascripts/application.js
//= require bootstrap-sprockets然后将其包含在CSS中
# assets/stylesheets/application.scss
@import "bootstrap-sprockets";
@import "bootstrap";https://stackoverflow.com/questions/33356077
复制相似问题