selenium webdriver上的超时默认值

som*_*ere 12 selenium selenium-webdriver

我对selenium的超时默认值感兴趣webdriver. ImplicitlyWait,SetPageLoadTimeout并且SetScriptTimeout.因为我想知道,我是否需要为这些超时设置值?或者默认值适用于selenium webdriver工作.但是我找不到正确的答案,有人说默认值是0,而另一个人说它是30秒.

Lou*_*uis 19

这三个超时由Selenium方程的服务器端管理.您的脚本,无论是Java,Python,Ruby,C#还是其他任何东西,都是一个将命令发送到浏览器中的服务器的客户端.(可能有一个中间件将命令中继到浏览器,如Selenium网格.不幸的是,它有时也被称为"服务器".)

Firefox服务器定义它的超时如下:

  • 隐含等待超时默认设置为0.这意味着如果找到元素的命令找不到任何内容,它将不会等待.

  • 页面加载超时默认情况下设置为-1.这意味着Selenium将无限期地等待页面加载.

    什么Saifur 发现一样的页面加载超时.这是Selenium客户端和Selenium服务器之间的超时,在Saifur找到的页面上没有特别好解释.

  • 默认情况下,脚本超时设置为0.源代码中的注释说明:

    此会话应等待异步脚本完成执行的时间量(以毫秒为单位).如果设置为0,则在脚本执行后直到下一个事件循环才会触发超时.这将为使用基于0的setTimeout完成的脚本提供支持.

    因此,即使它设置为零,异步脚本仍然可以执行,但必须在Selenium的超时再次运行之前完成.

这来自Selenium用于Firefox的代码.其他浏览器使用不同的代码库,但它们应该表现得一致,至少对于Selenium本身适用的事情,比如这些超时.因此,对于其他浏览器,值和它们的解释也应该相同.