暂停/继续在webdriver中执行selenium脚本



我的项目中有一个很大的流。如果我在由100个步骤组成的第99步中出现任何错误,那么我需要从第一步开始,我正在使用selenium自动化这些流。

所以有任何东西暂停/继续硒脚本,即使没有找到定位器

public void waitForElementToBeVisible(String cssSelector) throws Throwable {
    try {
        WebDriverWait wait = new WebDriverWait(driver, 30); //30 = TIMEOUT DURATION IN SECONDS
        wait.until(ExpectedConditions.or(
                ExpectedConditions.visibilityOfElementLocated(By.cssSelector(cssSelector)) //CSS SELECTOR CAN BE DEFINED WHEN THIS METHOD IS CALLED e.g. waitForElementToBeVisible("Button");
        ));
    } catch (Exception e) {
        System.out.println("Timeout exceeded");
        //ACTIONS YOU WANT TO CARRY OUT IF THE ELEMENT CAN'T BE FOUND, COULD JUST BE NOTHING.
    }
}

或者,如果您想在您的测试中运行它,而不设置方法,只需执行以下操作....

try {
    WebDriverWait wait = new WebDriverWait(driver, 30); //30 = TIMEOUT DURATION IN SECONDS
    wait.until(ExpectedConditions.or(
            ExpectedConditions.visibilityOfElementLocated(By.cssSelector("Button")) //CSS SELECTOR CAN BE DEFINED WHEN THIS METHOD IS CALLED e.g. waitForElementToBeVisible("Button");
    ));
} catch (Exception e) {
    System.out.println("Timeout exceeded");
    //ACTIONS YOU WANT TO CARRY OUT IF THE ELEMENT CAN'T BE FOUND, COULD JUST BE NOTHING.
}

最新更新