2

在我当前的项目中,我们使用iWebDriver在我们的 CI 服务器上运行验收测试。

有时,我们会看到错误:

Connection refused - connect(2) (Errno::ECONNREFUSED)

到目前为止,我们还没有发现这种失败的模式。每当我们遇到它时,我们只需重新启动构建,它通常会成功运行。我会说这发生在大约 10% 的时间里。

在每个人都因为我忽略了一个真正的问题而跳槽之前:每当测试失败时,我们都会捕获屏幕截图。每当发生此特定错误时,根据捕获的屏幕截图,似乎没有实际问题。它简单的超时错误不同(例如,没有及时找到元素);在这种情况下,我们会看到不同的消息:execution expired (Timeout::Error).

我们都假设这是由于 WebDriver 本身的一些不稳定的错误造成的。这诱使我实现一个脚本,该脚本仅检测上述错误消息并在检测到它时重新启动构建,否则会产生真正的失败。(实际上,我已经这样做了;我只是还没有配置我们的构建服务器来使用它。)

其他人是否看到过这种间歇性错误?这是一个已知问题吗?它实际上是否表明我们应该最终调查一个真正的问题(在这种情况下,我们从哪里开始)?

4

0 回答 0