Я пытаюсь расширить интерфейс IWebElement
в C #, чтобы добавить новый метод защиты от StaleElementReferenceException
.
Метод, который я хочу добавить, это простой retryingClick
, который попытается щелкнуть WebElement до трех раз, прежде чем отказаться:
public static void retryingClick(this IWebElement element)
{
int attempts = 0;
while (attempts <= 2)
{
try
{
element.Click();
}
catch (StaleElementReferenceException)
{
attempts++;
}
}
}
Причиной добавления метода является то, что наша веб-страница широко использует jQuery, и многие элементы динамически создаются / уничтожаются, поэтому добавление защиты для каждого WebElement становится огромным испытанием.
Таким образом, возникает вопрос: как мне реализовать этот метод, чтобы интерфейс IWebElement всегда мог его использовать?
Спасибо,
Привет.