-2

我从 WebDriverWait 更改为 FluentWait 因为它已被弃用,现在出现错误

private val waitForElement = FluentWait(DriverFactory.driver).withTimeout(Duration.ofMinutes(1)).pollingEvery(Duration.ofSeconds(1))
@Step("Choose button")
    fun Wizard() {
        waitForElement.until(ExpectedConditions.elementToBeClickable(firstPage.wizardLocator))
        firstPage.wizardLocator?.click()
            ?: throw IllegalStateException("could not locate the wizard button")
    }

收到此错误:

Message: org.openqa.selenium.NoSuchElementException: no such element: Unable to locate element
4

1 回答 1

0

根据ExpectedConditions.elementToBeClickable()

检查元素的期望是可见的并启用的,以便您可以单击它。

当您确定该元素存在于页面上但您想等到它可以与之交互时,您应该使用上述功能。您收到异常是因为该元素根本不存在于页面中。

所以选项在:

更多信息:如何使用 Selenium 测试使用 AJAX 技术的 Web 应用程序

于 2019-08-23T13:46:02.663 回答