@AfterMethod中的TestNG如何知道测试结果?
问题描述:
我有许多TestNG测试类,它们都扩展了一个基类AbstractIntegrationTest
。在超类中,我有一个mehod commonAfterMethod
,它在每个测试方法之后被调用并执行一些清理。@AfterMethod中的TestNG如何知道测试结果?
我想要的是在这个方法中做什么取决于测试结果,例如,如果测试失败,我想将测试数据转储到文件*进一步调查。问题是我需要完全在commonAfterMethod
中执行此操作,因为它在数据库上执行回滚操作,之后数据丢失。
感谢名单
答
传递afterMethod方法中的ITestResult对象。
@AfterMethod()
public void afterMethod(ITestResult result){
if(!result.isSuccess()){
//Do stuff here if it failed
}
}