如何解决 'undefined method `network_traffic'' 错误

how to solve the 'undefined method `network_traffic'' error

最近从 poltergeist 切换到 webkit 无头

*** NoMethodError Exception: undefined method `network_traffic' for #Capybara::Selenium::Driver:0x007fc2f30bbbd0>

违规代码行是

!page.driver.network_traffic.collect(&:response_parts).any?(&:empty?)

Capybara 驱动程序应该是 Poltergeist,而您使用 Selenium

network-traffic 未针对 Poltergeist.

以外的任何内容实施

More info.

无论何时调用 page.driver.xxxxxx,您都在调用可能不受任何其他驱动程序支持的驱动程序特定方法。 network_traffic 是仅 Poltergeist 支持的驱动程序特定方法之一。将来,如果您希望您的测试在多个驱动程序之间兼容,请远离任何 page.driver.xxxx 调用。

对于这种情况,您显示的代码似乎正在检查所有响应是否包含内容。我不确定这如何适合您的特定测试,但功能测试真的不应该直接担心特定的网络传输,而应该担心显示给用户的实际数据。