如果元素存在,则失败Webdriver测试

时间:2014-12-16 14:25:49

标签: testing selenium web webdriver

我是Webdriver的新手,我想知道如果元素存在,如何使我的测试用例失败。使用以下代码,我可以发送一个输出,如果元素id errorMessages存在,将显示输出。无论如何我还能让测试失败吗?

if (driver.findElements(By.id("errorMessages")).size() != 0) {
    System.out.println("Error..Warning Subscriber already exists ");
}

2 个答案:

答案 0 :(得分:1)

使用TestNG,您只需在Assert.fail("your message");块内使用if即可将测试标记为失败。类似的东西:

if (driver.findElements(By.id("errorMessages")).size() != 0) {
   Assert.fail("Error..Warning Subscriber already exists ");    
}

请参阅this了解重载

答案 1 :(得分:1)

我认为你是以错误的方式看待它。不是检查大小是否符合预期,然后强制测试失败,而是使用内置的断言方法,使其更像逻辑语句:

assertTrue(driver.findElements(By.id("errorMessages")).size() == 0, "Error..Warning Subscriber already exists");

Documentation from the TestNG site

如果断言失败,内置的断言方法将打印出该消息。