Как опубликовать дополнительное сообщение об ошибке junit5 в отчете xml, используя gradle? - PullRequest
0 голосов
/ 25 февраля 2019

Я пытаюсь добавить дополнительную информацию о сбое тестового примера в отчет xml:

Построение теста с параметром gradle

test {
    useJUnitPlatform()
    reports.junitXml.enabled = true
    // is it gradle side or junit side xml report generator implementation?
    // (does it use LegacyXmlReportGeneratingListener?)
}

, затем реализовать собственное расширение и использовать его с помощью @ExtendWith(MyExtension.class)

public class MyExtension implements TestExecutionExceptionHandler {
    @Override
    public void handleTestExecutionException(final ExtensionContext context, Throwable throwable) throws Throwable {
        context.publishReportEntry("ADDITIONAL_INFORMATIONS", SOME_DATA);
        // (is this call reportingEntryPublished from LegacyXmlReportGeneratingListener?)
        throw throwable;
    }
}

Но ADDITIONAL_INFORMATIONS нигде не отображается в xml.

Я знаю, что есть org.junit.platform.reporting.legacy.xml.LegacyXmlReportGeneratingListener, но я нашел только org.junit.platform.launcher.Launcher usecase и ничего о том, как его использовать сGradle.Каков наилучший способ добавить дополнительное сообщение к ошибочной записи XML с помощью gradle / junit5?Могу ли я добавить свой org.junit.platform.launcher.TestExecutionListener, используя Gradle?

Я ожидаю этого <failure message="...here">.

Используя

  • junit 5.4.0
  • gradle 4.10.2

1 Ответ

0 голосов
/ 26 февраля 2019

Нет, инфраструктура отчетов Gradle не использует JUnit LegacyXmlReportGeneratingListener.

Кроме того, Gradle еще не включает записи отчетов в создаваемые отчеты.Подробности смотрите в следующем выпуске Gradle: https://github.com/gradle/gradle/issues/4605

...