【发布时间】:2013-09-14 07:44:24
【问题描述】:
我正在使用 Selenium WebDriver,它工作正常,今天如果我使用下面的代码或收到错误 Unable to find element with id == //*[@id='ctl00_ContentPlaceHolder1_AddControl1_txtName']
我尝试使用这个:
public IWebElement GetElementId(string id)
{
//return Driver.FindElement(By.Id(id));
Driver.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(TimeOut));
return Driver.FindElement(By.Id(id));
}
并尝试过:
public IWebElement GetElementId(string id)
{
WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10));
IWebElement category = wait.Until<IWebElement>((d) =>
{
return d.FindElement(By.Id(el_id));
});
}
我仍然不知道如何避免超时或未找到元素错误
有什么帮助吗?
【问题讨论】:
-
可能是超时或者找不到元素?
-
ID 已更改?试试其他选择器?我们可以看到控件周围的 HTML 吗?发生在所有驱动程序中还是仅限于某个驱动程序?
标签: selenium webdriver selenium-webdriver