Я пытаюсь создать вспомогательный класс, который будет содержать различные ожидания Selenium WebDriver.Это дает пользователю больше гибкости при создании тестовых случаев.У меня есть некоторые проблемы с классом помощника для явных ожиданий.
Контрольный пример
[Test]
[TestCase(Browser.Chrome)]
public void ValidateExpicitWait(Browser browser)
{
Driver = StaticWebDriverFactory.GetLocalWebDriver(browser);
Driver.Url = "https://example.com/";
WaitsHelper.SetExplicitWait(Driver, ElementIdentifierType.LinkText, "More information...", 10);
var title = Driver.Title;
Assert.AreEqual(true, title.Contains("Example Domain"), $"Expected title does not match actual: {title}", title);
}
Явный класс ожидания
public static void SetExplicitWait(IWebDriver driver, ElementIdentifierType identifierType, string identifer, int timeout = 10)
{
WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(timeout));
IWebElement element = wait.Until<IWebElement>((d) =>
{
return d.FindElement(By.identifierType(identifer));
});
}
Имеется проблема с identifierType
изd.FindElement(By.identifierType(identifier));
Ошибка
«By» не содержит определения «identifierType