Ruby 取消Capybara中的页面加载

Ruby 取消Capybara中的页面加载,ruby,selenium-webdriver,capybara,Ruby,Selenium Webdriver,Capybara,我正在测试一个包含讨厌的iframe的页面,它需要很长时间才能加载;但是,我不是在测试iframe本身。如果可能的话,我希望能够运行我的测试,而不必每次都等待这个iframe 以下一种可能的解决方案应该可以做到这一点,但我很难找到文档或让它们中的任何一个正常工作: a) 请求发出后立即取消页面加载 b) 使用send\u键方法在加载页面时模拟转义按键 c) 使用javascript-页面。在加载页面时执行_脚本(“return window.stop()”) d) 取消加载特定元素 如何使用Ca

我正在测试一个包含讨厌的iframe的页面,它需要很长时间才能加载;但是,我不是在测试iframe本身。如果可能的话,我希望能够运行我的测试,而不必每次都等待这个iframe

以下一种可能的解决方案应该可以做到这一点,但我很难找到文档或让它们中的任何一个正常工作:

a) 请求发出后立即取消页面加载

b) 使用
send\u键
方法在加载页面时模拟转义按键

c) 使用javascript-
页面。在加载页面时执行_脚本(“return window.stop()”)

d) 取消加载特定元素


如何使用Capybara向加载页面或元素发送取消请求?

在这里,您可以使用gem来存根iframe请求。

在集成测试结束时,我们遇到了未完成的网络请求(Ajax和资产)问题,当所有的断言都得到满足,测试结束并被拆毁时

因此,我们在teardown块中的integration_test_helper.rb文件中添加了
execute_脚本(“window.stop();”)
,效果非常好


因此,我建议在iframe完全加载之前添加一个可以满足的断言,并在测试的拆卸过程中运行
window.stop()

这方面运气好吗?你想好怎么做了吗?