具有入门级知识的Java工作。我们正在升级到Selenium 3,并且被告知WebDriverWait需要使用ExpectedConditions,使用其他方法可能导致升级后必须重做。对此不确定,但是我将按照此处的命令进行操作。

我试图摆脱自动化规范中的艰辛等待。我正在尝试设置等待时间,以确保元素变得不可点击。或多或少试图做相反的事情

WebDriverWait(driver, Timeout.SHORT)
    .until(ExpectedConditions.elementToBeClickable(By.id(elementID)));

SO上有一篇帖子提到了这一点。我试图实现他们的答案,但可惜没有用。可以在这里找到答案:
How to wait for an element NOT to be clickable using Selenium Webdriver?

除了与Predicate类的使用有关的某些问题之外,我还遇到了一些错误。

任何和所有帮助/建议将不胜感激。

最佳答案

Selenium的ExpectedConditionsExpectedConditions.not()一起提供,它应该正是您要的内容(链接到documentation)。

WebDriverWait(driver, Timeout.SHORT)
    .until(ExpectedConditions.not(
        ExpectedConditions.elementToBeClickable(By.id(elementID)))
    );

10-05 18:27