我想创建一个通用函数来查找特定项目?
我执行此 C# 代码(Src:正确使用 Selenium WebDriver 中的显式等待)
IWebDriver driver = new FirefoxDriver();
driver.Url = "http://somedomain/url_that_delays_loading";
WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(10));
IWebElement myDynamicElement = wait.Until<IWebElement>((d) =>
{
try
{
return d.FindElement(By.Id("someDynamicElement"));
}
catch
{
return null;
}
});
我将替换 wait.Until((....); 使用通用函数。
如何 Ideclare 一个通用的By选择器来查找特定项目?
以下是内置 Selenium2 选择器的列表:
ClassName
CssSelector
Id
LinkText
PartialLinkText
Name
TagName
XPath
例如 :
IWebElement myDynamicElement = WaitForElement(????) // for exemple By.TagName = "Test"
public static IWebElement WaitForElement(**By selector**)
{
wait.Until<IWebElement>((d) =>
{
try
{
return d.FindElement(**By selector**);
}
catch
{
return null;
}
});
}