我正在构建一个使用页面对象模型(POM)并具有一个名为HomePage的类文件的自动化框架。
我已经使用声明了元素:
[FindsBy(How = How.Id, Using = "TextField1")]
private IWebElement FirstTextField{ get; set; }
我已声明我的WebDriverWait如下:
WebDriverWait wait = new WebDriverWait(driver,TimeSpan.FromSeconds(30));
我在HomePage.cs中有一个称为Validate()的方法,在此方法中我想使用 WebDriverWait如下:
wait.Until(ExpectedConditions.ElementIsVisible(FirstTextField))
如何以这种方式使用WebDriverWait,而不必使用“按”定位器:
wait.Until(ExpectedConditions.ElementIsVisible(By.Id("TextField1")));
答案 0 :(得分:0)
UPDATE table1
SET column4 = column1 + column2
WHERE (column1 + column2) IS NOT NULL AND column3 IS NULL;
在C#ExpectedConditions中没有ExpectedConditions.ElementIsVisible()
的重载。您可以使用自定义实现
IWebElement
用途:
public static Func<IWebDriver, IWebElement> ElementIsVisible(IWebElement element)
{
return (driver) =>
{
try
{
return return element.Displayed ? element : null;
}
catch (StaleElementReferenceException)
{
return null;
}
};
}