1

我如何在 TestNg 的 @AfterTest 注释中获取测试用例状态。如果测试用例在@AfterTest 中通过或失败,我需要采取一些措施。

@AfterTest(alwaysRun=true)
public void teardown(ITestContext test) throws Exception {

  String testcase = test.getCurrentXmlTest().getParameter("id");
} 
4

2 回答 2

0

问题是这ITestContext是全球性的,而不是特定于测试。你需要的是有一个监听器,并让它执行OnTestFailure

http://testng.org/doc/documentation-main.html#testng-listeners

于 2013-09-15T15:36:01.340 回答
0

听众打开了很多可能性,所以你可能想研究一下。

如果你想要一个“更快”的解决方案,你可以使用ITestResult.getStatus().

以下是 after 方法的示例:

@AfterMethod
protected void afterMethod(ITestResult result, ITestContext testContext) {
    if (result.getStatus() == ITestResult.FAILURE) {
        //do something in case of fail
    } else {
        //do something else for success
    }
}
于 2020-08-14T13:01:42.137 回答