如果我的隐式等待是10秒而显式等待是5秒,它会在预期的条件下等待15秒

时间:2017-03-27 19:22:49

标签: selenium webdriver automated-tests

当我写一些隐式等待,如10秒,然后对于一个元素,我在显式等待中给出5秒时间...然后隐式等待将变为零并且仅等待5秒或者它将添加隐式等待时间为好意味着它会等待15秒

1 个答案:

答案 0 :(得分:0)

让我一个一个回答你:

  1. 每当你放置一个ImplicitlyWait时,Selenium会在每次动作后执行等待。所以它变得具有传染性。

  2. 当您进行显式等待时,这些被定义为特定条件,如“块中的元素可见性”。

  3. 因此,每种类型的等待都以您自己的方式行事。

  4. 为每种类型的等待分配时间单元后,将执行它们。它们永远不会被添加或排除。

  5. ImplicitlyWait仅在您的代码中提及一次。该指令适用于Webdriver。 ImplicitlyWait对任何元素都没有任何影响。

  6. 当指定显式等待时,要求Webdriver等待定义的时间段(例如5秒),其中指定元素状态(例如element_to_be_visible)的until条件,Webdriver应该查找。< / p>

  7. 现在回答你的问题:10秒ImplicitlyWait for a element不是一个有效的语句。显式等待5秒你必须放置元素的某个状态/行为(例如element_to_be_clickable)。如果元素未在定义的时隙内显示该行为,Selenium将抛出异常。
  8. 如果这回答了你的问题,请告诉我。