Selenium webdriver selenium WebDriver中的隐式等待

Selenium webdriver selenium WebDriver中的隐式等待,selenium-webdriver,Selenium Webdriver,我含蓄地等待如下-------> d.manage().timeouts().implicitlyWait(60,TimeUnit.SECONDS) //我还写了3本书 d.findElement(By.id(“element1”))。单击()//假设加载需要20秒 d.findElement(By.id(“element2”)).sendKeys(“”)//假设加载需要10秒 d.findElement(By.id(“element3”))。单击() //现在我的问题是webdriver要等第

我含蓄地等待如下------->
d.manage().timeouts().implicitlyWait(60,TimeUnit.SECONDS)
//我还写了3本书
d.findElement(By.id(“element1”))。单击()//假设加载需要20秒
d.findElement(By.id(“element2”)).sendKeys(“”)//假设加载需要10秒
d.findElement(By.id(“element3”))。单击()
//现在我的问题是webdriver要等第三个元素多久,是60-20+10=30秒还是全速60秒


抱歉,为了清楚起见,我更改了我的问题。

现在
隐式等待()
(Python)或
隐式等待()
(Java)方法告诉脚本,更准确地说,它告诉Web驱动程序轮询DOM一段时间,30秒或60秒,或者您指定的任何时间,当试图查找一个或多个元素时,如果这些元素不立即可用。这里的poll是指一次又一次地检查DOM


一旦定义,隐式等待将在Webdriver对象实例的整个生命周期内定义,直到它被更改。因此,一旦在脚本中定义,它将在脚本的生命周期内处于活动状态,直到被修改为止。在您的情况下,
element1
element2
element3
将等待相同的时间,即60秒。如果在规定的时间内找到该元素,则执行下一个命令。但是,如果不是时间,WebDriver会引发一个
TimeoutException
异常。

隐式等待”告诉
findElement()
方法查找元素,直到指定的时间或元素存在于DOM中(不一定显示)。每次搜索都会出现这种情况,搜索之间没有任何依赖关系。

谢谢,我写下的疑问比previous@Sambam正如我在回答中所写,每个搜索之间没有依赖关系。每次调用
findElement()
时,它都会尝试在您提供的时间限制(在您的示例中为60秒)内定位元素。@Sambam想象一下,如果您有70次搜索,每次都需要一秒钟,会发生什么。你认为脚本在60次搜索后会停止工作吗?是的,但我已经明白了,我的怀疑是明确的。谢谢谢谢你,我写下的疑问比以前清楚多了