テストのティアダウンメソッドで実行されたテストメソッドの名前を取得するにはどうすればよいですか? 質問する

テストのティアダウンメソッドで実行されたテストメソッドの名前を取得するにはどうすればよいですか? 質問する

基本的に、実行されたばかりのテストをコンソールに記録するティアダウン メソッドがあります。その文字列を取得するにはどうすればよいでしょうか?

クラス名は取得できますが、実行された実際のメソッドが必要です。

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

ベストアンサー1

@AfterMethod で ITestResult 型のパラメータを宣言すると、TestNG によってそれが挿入されます。

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

おすすめ記事