gpt4 book ai didi

selenium-webdriver - 在单击 selenium Web 驱动程序中的任何元素之前使用 Thread.sleep() 或显式等待是最佳实践吗

转载 作者:行者123 更新时间:2023-12-04 07:53:23 25 4
gpt4 key购买 nike

我是 Web 驱动程序的新手,我为 Web 应用程序编写了一个 selenium 脚本,其中包含backbone.js 和 select2。

我曾经经常得到 NosuchElementException 和 Element is not clickable 异常。所以我决定编写如下脚本,
- 在点击任何元素之前,它将使用显式等待等待元素的存在。
即在单击任何元素之前,它会等到元素被加载。

在单击之前等待每个元素是最佳做法吗?

最佳答案

显式等待某个元素及其特定状态是 selenium-webdriver 中的最佳实践。 sleep 从来都不是一个好主意,因为您的 sleep 超时可能会更少或更多,因此会使您的测试不一致且不确定。

使用 WebDriver wait until是同步问题的最佳解决方案。所以在 JS 中是这样的,

var until = webdriver.until;
var searchBox =
driver.wait(until.elementIsEnabled(driver.findElement(webdriver.By.name('q'))),5000,'Search button is not enabled');

关于selenium-webdriver - 在单击 selenium Web 驱动程序中的任何元素之前使用 Thread.sleep() 或显式等待是最佳实践吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30986604/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com