我正在尝试为我的Rails应用程序编写集成测试。它的GUI相当复杂,因此需要进行大量的集成测试(而不是控制器或单元测试),以确保所有AJAX请求和DOM呈现都能正常工作。
我尝试过Capybara、Capybara-webkit、Poltergeist和Chromedriver,但它们都没有执行我的CSS或document.ready函数。
我做了大量的阅读,并尝试了许多解决方案,但都没有成功。我认为这可能与资产管道有关。
我不确定下一步去哪里解决这个问题。
谢谢,露易丝
发布于 2016-12-22 07:22:39
在我的案例中,它确实与资产管道有关。
在我关闭了test.rb中的资产连接之后,一切都运行得很好。
test.rb:
# Debug mode disables concatenation and preprocessing of assets.
# This option may cause significant delays in view rendering with a large
# number of complex assets.
config.assets.debug = truespec_helper:
Capybara.register_driver :chrome do |app|
Capybara::Selenium::Driver.new(app, :browser => :chrome)
end
Capybara.javascript_driver = :chrome
Capybara.asset_host = "http://localhost:3000"已排序。我需要切换到chromedriver才能发现这一点-它依赖于我能够在真正的浏览器中观看测试驱动程序的工作,并打开Chrome javascript控制台(当水豚在调试器中暂停时)查看发生了什么。
https://stackoverflow.com/questions/41273303
复制相似问题