TestNG Custom Reporter включает описание теста вместо имени
Я хочу реализовать собственный репортер для результатов теста TestNG xml. В настоящее время я использую JUnitReportReporter. Мой результат xml в настоящее время выглядит так:
testcase name="testSearchForProductAndVerifyFirstFoundItem" time="55.516" classname="com.jpard.jaf.test.SearchForAnItemTests"
Я просто хочу заменить имя тестового примера описанием теста, как в @Test(description = "Проверить, что первым найден элемент в результатах"). Как я могу сделать это самым простым способом? Большое спасибо!
2 ответа
Я сделал это простым расширением класса JUnitReportReporter и переопределением метода getTestName для отображения в имени и описании метода отчета xml. Класс выглядит так:
public class CustomReporter extends JUnitReportReporter {
@Override
protected String getTestName(ITestResult tr) {
return tr.getMethod()
.getMethodName() + ": " + tr.getMethod()
.getDescription();
}
}
Я надеюсь, что это поможет любому, кто ищет эту проблему.
Я думаю, вам придется реализовать IMethodInterceptor
интерфейс, который будет возвращать список экземпляров метода, IMethodInstance
а затем из этого списка получить все экземпляры один за другим, а затем
desc = instance.getMethod().getDescription();
метод getDescription()
Посмотрите здесь