ruby-on-rails - Capybara:测试 JavaScript 运行没有错误

标签 ruby-on-rails capybara

我想编写一个请求规范来验证给定页面上 JavaScript 的加载和执行,没有任何错误。

我知道我可以在 JavaScript 文件末尾向 DOM 添加一些内容,并断言此内容的存在,但这感觉像是一种黑客行为,迫使我出于测试原因污染我的代码。我更愿意做一些类似的事情。

visit some_path
page.should succesfully_run_javascript

最佳答案

您可以在测试中使用以下代码来实现此目的。

page.driver.console_messages.each { |error| puts error }
expect(page.driver.console_messages.length).to eq(0)

第一行打印出错误,方便查看发生了什么。第二行导致测试失败。

关于ruby-on-rails - Capybara:测试 JavaScript 运行没有错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17835433/

相关文章:

ruby-on-rails - 如何检查 Rails 更新操作中属性是否发生变化?

ruby-on-rails - 在 rails 中使用 simple-form 时可以更改标签显示名称吗?

ruby-on-rails - Rails link_to params .id 而不是/id

ruby-on-rails - Capybara:尝试模拟按 <ENTER> 时出现 NotSupportedByDriverError

javascript - 如何在没有浏览器的情况下测试 rails javascript 和 ajax

cucumber - 如何阻止 selenium chromedriver 登录到屏幕

ruby-on-rails - ActiveAdmin 表单(新/编辑)belongs_to 关联?

ruby-on-rails - youtube 视频中的 Phantom JS 错误

javascript - 有没有办法使用 Rspec/Capybara/Selenium 将 javascript console.errors 打印到终端?

ruby-on-rails - 当页面有几个相同的链接时, capybara 的 "click_link"方法如何知道点击哪个链接?