我有一个使用TestNG和Reporter的selenium测试套件来记录Jenkins的结果 . 我在所有方法中都使用Reporter将活动记录到控制台,而这反过来又出现在Jenkins的Reporter html输出中列出的每个测试中 . 我想做的是,只在报告中看到失败的测试中的Reporter日志输出 . 如果测试通过,我想在报告中看到没有记录的测试用例名称 .

我想我可以在我的TestNGWatcher类中执行此操作,我在其中覆盖onTestSuccess(ITestResult结果)方法并添加以下行:

Reporter.clear();

那条单行做了我想要的传递测试,但也为失败的测试禁用了Reporter输出 . 它似乎完全转向了Reporter输出 .

有没有办法在测试失败时“打开”并在测试通过时将其关闭?

非常感谢提前!