使用capybara,我想测试application.js
文件是否异步加载。我试过以下代码
expect(page).to have_css('script[async="async"][src="/assets/application.js"]', visible: false)
但这不起作用,因为在生产模式下运行测试,会添加摘要,因此文件的名称类似于application-ae5fag34.js
。怎么容纳这个?
答案 0 :(得分:2)
选择器script[src^="/assets/application-"][src$=".js"][async="async"]
应该有效。但是,首先不应该这样做。在生产服务器上运行测试并不是一个好主意。
您应该在本地或CI服务器上运行测试,以便在它们最终投入生产之前捕获错误。许多测试导向的宝石不适用于生产,可能导致安全漏洞。