基本上,我有一个拆卸方法,我想登录到刚刚运行测试的控制台。我将如何获取该字符串?

我可以获得类名,但是我想要刚刚执行的实际方法。

public class TestSomething {

    @AfterMethod
    public void tearDown() {
        System.out.println("The test that just ran was: " + getTestThatJustRanMethodName());
    }

    @Test
    public void testCase() {
       assertTrue(1 == 1);
    }
}

...应该输出到屏幕上:“刚运行的测试是:testCase”

但是,我不知道getTestThatJustRanMethodName实际上应该具有的魔力。

最佳答案

在@AfterMethod中声明ITestResult类型的参数,然后TestNG将其注入(inject):

@AfterMethod
public void afterMethod(ITestResult result) {
  System.out.println("method name:" + result.getMethod().getMethodName());
}

09-27 23:37