Selenium WebDriver - 捕获失败并继续下一步

时间:2017-12-06 16:30:04

标签: java selenium

我正在使用Selenium WebDriver,其中包含以下几个测试步骤:

    //Example Test Step 1
    driver.get("https://url.de");
    driver.findElement(By.id("login")).clear();
    driver.findElement(By.id("login")).sendKeys("username");
    driver.findElement(By.id("password")).clear();
    driver.findElement(By.id("password")).sendKeys("password");
    driver.findElement(By.cssSelector("#login-wrapper > input.button")).click();
    driver.findElement(By.linkText("Your account")).click();
    driver.findElement(By.cssSelector("button.link")).click();
    driver.findElement(By.id("items_1")).click();
    driver.findElement(By.id("items_2")).click();
    driver.findElement(By.xpath("(//input[@id='items_1'])[1]")).click();
    driver.findElement(By.xpath("(//input[@value='delete it'])[1]")).click();
    driver.findElement(By.cssSelector("input.button.auth")).click();
    System.out.println("[x] Test step has been performed sucessfully: ABO KUNDE");

如果一个测试步骤失败,我想捕获此异常并强制Selenium继续下一步。我该如何处理这个问题,是否必须为每一步定义这种处理?

例如,测试步骤

driver.findElement(By.id("password")).sendKeys("password");

失败。我可以强制Selenium继续“示例测试步骤2”吗?我们正在使用Selenium WebDriver和BrowserStack。

1 个答案:

答案 0 :(得分:0)

对于webdriver,请看这个答案:

How to continue webdriver/selenium after error

只是为了完整性:对于你在标题中提到的Selenium IDE(我猜这是一个错字,就像Rafał所说的那样)会有flow control命令来做同样的事情。