【问题标题】:Test case failing randomly while building Selenium automation in jenkins在詹金斯中构建 Selenium 自动化时测试用例随机失败
【发布时间】:2017-02-24 07:36:44
【问题描述】:

我正在尝试为我的自动化运行 jenkins 工作。这里我使用的是黄瓜 Bdd。在单线程本地运行时,测试用例运行良好。但是,当使用多线程在 jenkins 中构建工作时,测试用例随机失败。一旦通过,在后续构建中它就会失败。他们中的大多数都有以下错误。似乎存在一些服务器问题,即在运行测试用例时页面未在浏览器中加载。你能建议任何方法来成功运行它吗?
我的整个测试用例非常大,如果不在 multiThread 中运行,则需要 6 到 7 小时。服务器不支持这么长时间。运行一半后(3 小时后),套接字超时。

org.openqa.selenium.TimeoutException:课程在 30 分钟后未加载 秒。构建信息: 版本:'2.53.1',修订:'a36b8b1cd5757287168e54b817830adce9b0158d',时间: '2016-06-30 19:26:09' 系统信息:主机:'jenkins-50a5c8e3', ip:'100.64.111.138',os.name:'Linux',os.arch:'amd64',os.version:'2.6.32-5-xen-amd64',java.version:'1.8.0_40'驱动 信息:驱动程序版本:未知

【问题讨论】:

标签: java selenium jenkins selenium-webdriver


【解决方案1】:

这个问题有点含糊,所以我能做的就是对您可能想要研究的内容给出一个含糊的答案。

  1. 确保您的测试可以独立运行您提到它可以在单个线程中运行。如果您的测试不是每个都有独立的数据(课程、用户等),那么很容易让一个测试执行诸如删除课程之类的操作,而如果您并行运行它们,另一个测试正在尝试访问它。

  2. 计时问题如果您在测试中遇到计时问题,您可能需要更强大的显式等待。

  3. 确保正确处理驱动程序最好放在 finally 块中。您需要确保无论您的测试采用何种路径,驱动程序都会关闭。您可能还想启动一个策略来清理搁浅的驱动程序实例、重启节点等......

【讨论】:

    猜你喜欢
    • 2014-07-18
    • 1970-01-01
    • 2018-05-31
    • 2019-08-03
    • 1970-01-01
    • 1970-01-01
    • 2017-01-29
    • 2018-01-17
    相关资源
    最近更新 更多