编辑
2023-06-25
Csharp/dotNet
0
请注意,本文编写于 516 天前,最后修改于 516 天前,其中某些信息可能已经过时。

目录

显式等待和隐式等待。

官网地址:https://www.selenium.dev/

显式等待和隐式等待。

在显式等待中,可以使用 WebDriverWait 类来等待某个条件变为真。例如,可以使用以下代码等待一个元素可见并可点击:

csharp
// 设置超时时间和轮询间隔 TimeSpan timeout = TimeSpan.FromSeconds(10); TimeSpan pollingInterval = TimeSpan.FromSeconds(0.5); // 创建 WebDriverWait 对象 WebDriverWait wait = new WebDriverWait(driver, timeout, pollingInterval); // 等待元素可见并可点击 IWebElement element = wait.Until(ExpectedConditions.ElementToBeClickable(By.XPath("//button[@text='新增']"))); // 点击元素 element.Click();

在隐式等待中,可以使用 ImplicitWait 属性来等待页面元素的加载。例如,可以使用以下代码设置一个隐式等待,让 Selenium 在查找元素时等待最多 10 秒:

csharp
// 设置隐式等待时间 driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(10); // 查找元素并点击 driver.FindElement(By.XPath("//button[@text='新增']")).Click();

这两种等待方法都可以替代 Thread.Sleep(),使测试更加可靠和高效。建议优先使用显式等待,在必要时再使用隐式等待。

本文作者:宁骑

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 MIT 许可协议。转载请注明出处!