【发布时间】:2014-01-29 22:57:33
【问题描述】:
我通过在 Jenkins 中创建作业在 Saucelabs 上运行 Selenium 测试。由于网络问题或身份验证挑战,Saucelabs 上的一些测试超时。 Jenkins 中的作业结果显示为成功通过。如何在 Jenkins 工作中显示错误?有没有办法在测试超时时使工作失败?提前感谢您的帮助。
【问题讨论】:
标签: selenium junit jenkins saucelabs
我通过在 Jenkins 中创建作业在 Saucelabs 上运行 Selenium 测试。由于网络问题或身份验证挑战,Saucelabs 上的一些测试超时。 Jenkins 中的作业结果显示为成功通过。如何在 Jenkins 工作中显示错误?有没有办法在测试超时时使工作失败?提前感谢您的帮助。
【问题讨论】:
标签: selenium junit jenkins saucelabs
如果您可以在控制台日志输出中搜索指示测试何时超时的字符串,您可以使用Text Finder plugin 来查找该字符串并使构建失败。
【讨论】:
如果您的测试在运行时失去与网格的连接,那么 Sauce 将超时(在 JSON 数据包中不活动 90 秒后),并且由于您的测试没有连接,因此您的测试无法知道它发生了。除非您在 Junit 或 TestNG 测试中设置超时,否则如果达到长时间超时,您可以确定它一定是失败,然后可能有一个 @AfterTest 步骤尝试使用标准 JSON /status 请求 ping 网格状态,如果它失败了,你可以抛出一个 Assert.fail 。我还没有尝试过,但它似乎可以工作。
另外,您也许可以使用Saucerest 来查询测试状态并可能得到超时回复?
【讨论】: