假设这是我的代码
Webdriver dr = new FireFoxdriver();
@test(prioity =1)
{
dr.findelement(By.id("element1_id")).click();
}
@test(prioity =2)
{
dr.findelement(By.id("element2_id")).click();
}
如果dr.findelement(By.id("element1_id")).click();
抛出异常,那么不后如何停止执行第二个测试用例?
答案 0 :(得分:1)
如果您正在使用TestNG,则可以使用参数alwaysRun。
@Test(priority = 1, alwaysRun = true)
这将执行该方法,无论其他任何测试(或配置方法)发生什么,所以小心!)
答案 1 :(得分:0)
不确定您使用的是哪种语言,但是参考您的示例,很容易将测试用例组合在一起 - 这是一个java解决方案,也应该与其他语言一起使用:
WebElement element = null;
try{
element = dr.findByElement(By.id("element1_id"));
}catch(NoSuchElementException e){
// If no matching element for "element1_id" is found, search for the other one
element = dr.findByElement(By.id("element2_id"));
// you might want to check again the exception
}
if(element != null){
element.click();
}
这是方法findByElement的API Doc及其返回值/异常 http://selenium.googlecode.com/git/docs/api/java/org/openqa/selenium/WebDriver.html#findElement-org.openqa.selenium.By-
HTH