测试超时(Selenium+Jenkins+Grid)



我们已经开始随机超时,但无法得到原因。测试使用硒网格在亚马逊上的远程计算机上运行。这是怎么回事:

  • 浏览器打开,
  • 然后页面正在加载,但无法在 120 秒内完全加载,
  • 然后抛出超时执行。

如果我在本地运行相同的测试,那么一切都很好。

错误是普通超时异常,如果在driver.manage().timeouts().pageLoadTimeout()中设置的时间段内未完全加载页面,则会引发该异常。问题是网站的页面无法在该时间内完全加载。但是,当driver.manage().timeouts().pageLoadTimeout()中设置的时间段完成并且因此,Selenium拥有浏览器时,页面将立即加载。无法在同一台远程计算机上手动重现此问题。我们尝试了不同版本的Selenium独立,Chromedriver,Selenium驱动程序。浏览器是谷歌浏览器63。很高兴听到有关原因的任何建议。

当Selenium默认加载网页/URL时,它遵循设置为正常的pageLoadStrategy的默认配置。为了使Selenium不等待整页加载,我们可以配置pageLoadStrategy页面加载策略支持 3 个不同的值,如下所示:

  • 正常(整页加载)
  • 渴望(交互式)
  • 没有

代码示例 :

  • 爪哇岛

    capabilities.setCapability("pageLoadStrategy", "none");
    
  • caps["pageLoadStrategy"] = "none"
    

在这里,您可以通过JavaPython客户端找到详细的讨论。

最新更新