TestNG中BeforeClass/AfterClass/BeforeMethod/AfterMethod中异常后不会继续执行TC的处理方式
1.精确抛出异常
package com.rose.test.testng;
import org.testng.annotations.AfterMethod;
import org.testng.annotations.Test;
public class LocalTest {
@AfterMethod
public void setUp(){
try{
System.out.println("AfterMethod");
throw new AssertionError();
}catch(AssertionError e){
//e.printStackTrace();
}
}
@Test
public void test1() {
System.out.println("test1");
}
@Test
public void test2() {
System.out.println("test2");
}
}
如以上例子。必须在catch中抛出AssertionError异常,比如只是抛出Exception,就不会解析执行后面的TC
2,在XML文件中使用configfailurepolicy="continue"
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE suite SYSTEM "http://testng.org/testng-1.0.dtd">
<suite name="Default suite" configfailurepolicy="continue">
<test verbose="2" name="Default test">
<parameter name="flag" value="true" />
<classes>
<class name="com.rose.test.testng.LocalTest"/>
</classes>
</test> <!-- Default test -->
</suite> <!-- Default suite -->

浙公网安备 33010602011771号