Рассмотрим как создавать HTML-отчет для результатов выполнения тестов JUnit. В этом примере я создаю HTML-отчет для проекта JUnit-Examples, представленного на Github.
Это продолжение туториала по JUnit 5. Введение опубликовано здесь.
1. Подключаемый модуль Maven Surefire Report
1.1. Добавить зависимость плагина
Добавьте последнюю версию maven-surefire-report-plugin в раздел отчетов файла pom.xml.
<reporting> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-report-plugin</artifactId> <version>2.22.2</version> </plugin> </plugins> </reporting>
1.2. Команда по умолчанию
Когда мы запускаем тесты JUnit с плагином Surefire, он генерирует отчеты в текстовом и XML-форматах.
При вызове плагин Surefire Report анализирует сгенерированные target/surefire-reports/TEST-*.xml файлы и отображает их с помощью DOXIA (структура генерации контента), создавая HTML-версию результатов тестирования для отображения.
Обратите внимание, что по умолчанию плагин не привязан ни к одной из основных фаз, которые мы обычно вызываем с помощью команды mvn. Поэтому мы должны вызвать его прямо из командной строки:
mvn surefire-report:report
Если мы откроем сгенерированный HTML-отчет, он будет выглядеть примерно так.

2. Параметры конфигурации
2.1. Отображение только неудачных тестов
По умолчанию плагин Surefire Report показывает в сгенерированном отчете HTML все удачные и неудачные результаты тестирования. Чтобы отображались только неудачные тесты, свойство showSuccess должно быть установлено в false.
<reporting> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-report-plugin</artifactId> <version>2.22.2</version> <configuration> <showSuccess>false</showSuccess> </configuration> </plugin> </plugins> </reporting>
2.2. Настраиваемое имя отчета
Чтобы задать пользовательское имя файла для сгенерированного HTML отчета, для свойства outputName должно быть установлено нужное имя.
После запуска mvn сгенерированный файл отчета называется JUnit-Examples-Test-Report.html.
<reporting> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-report-plugin</artifactId> <version>2.22.2</version> <configuration> <outputName>JUnit-Examples-Test-Report</outputName> </configuration> </plugin> </plugins> </reporting>
2.3. Ссылки на исходный код для неудачных тестов
Для неудачных тестов мы можем сообщить номер строки, в которой они были неудачными. Это можно сделать с помощью плагина maven-jxr-plugin.
Добавьте этот плагин в раздел отчетов файла pom.xml для сообщения номеров строк.
<reporting> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-report-plugin</artifactId> <version>2.22.2</version> <configuration> <outputName>JUnit-Examples-Test-Report</outputName> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jxr-plugin</artifactId> <version>3.1.1</version> </plugin> </plugins> </reporting>
Хорошего изучения!!!
