Как добавить пользовательские ExpectedConditions для Selenium?

Я пытаюсь написать свои ожидаемые условия для Selenium, но я не знаю, как добавить новую. У кого-нибудь есть пример? Я не могу найти учебники для этого онлайн.

В моем текущем случае я хочу подождать, пока элемент не появится, не будет видим, не включен и не имеет атрибута "aria-disabled". Я знаю, что этот код не работает:

var wait = new WebDriverWait(driver, TimeSpan.FromSeconds(seconds));
return wait.Until<IWebElement>((d) =>
    {
        return ExpectedConditions.ElementExists(locator) 
        && ExpectedConditions.ElementIsVisible 
        &&  d.FindElement(locator).Enabled 
         && !d.FindElement(locator).GetAttribute("aria-disabled")
    }

РЕДАКТИРОВАТЬ: немного дополнительной информации: проблема, с которой я сталкиваюсь, с вкладками jQuery. У меня есть форма на отключенной вкладке, и она начнет заполнять поля на этой вкладке, прежде чем вкладка станет активной.

Ответы на вопрос(3)

Ваш ответ на вопрос