Как мне сгенерировать безошибочный отчет для всех тестов и заставить это работать с jenkins?

#selenium #maven #jenkins #junit #maven-surefire-plugin

#selenium #мавен #дженкинс #юнит #maven-surefire-plugin #maven #junit

Вопрос:

У меня есть большое количество тестов Junit, в которых selenium выполняется в eclipse, что я хотел бы сделать, это сгенерировать отчет Junit или surefire для тестов после того, как все они будут запущены. Я знаю, что с maven вы можете сделать это для отдельных тестов, запустив mvn test на консоли и сгенерировав отчет с помощью:

 mvn surefire-report:report-only
  

Тем не менее, это тестирует и создает отчет для каждого отдельного теста, есть ли способ заставить это работать для нескольких тестов? Причина этого в том, что я запускаю эти тесты без головы в Jenkins, я знаю, что плагин электронной почты jenkins может позволить мне передавать html-отчет после сборки, который даст мне представление об успехе и неудаче теста.

Комментарии:

1. Первые тесты selenium — это интеграционные тесты, которые должны обрабатываться maven-failsafe-plugin. Кроме того, если вы хотите получить отчет о Jenkins, настройте Jenkins соответствующим образом… нет необходимости использовать surefire-report? Или вы создаете сайт в сборке?

Ответ №1:

Вы можете попробовать использовать эту команду:

#mvn чистый тест

Это очистит существующие отчеты и запустит все тестовые примеры за один раз и сгенерирует безошибочные отчеты для всех.

Пожалуйста, дайте мне знать, если это то, что вы ищете. 🙂

Комментарии:

1. Спасибо за ваш ответ, я запустил его, и, к сожалению, в моем проекте playground был запущен только 1 из 2 моих тестов, у меня есть несколько модульных тестов, которые являются частью других пакетов, если это поможет? На самом деле он очистил старый отчет, но не сгенерировал новый. Есть идеи?

2. Вы можете попробовать #mvn очистить тестовый сайт

Ответ №2:

Во-первых, вам нужно иметь все нужные плагины и зависимости в вашем pom.xml файл.

 <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-site-plugin</artifactId>
                <version>3.7.1</version>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>3.0.0-M4</version>
            </plugin>
        </plugins>
    </build>

    <!-- `mvn clean test site` to generate the junit html report-->
    <reporting>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-report-plugin</artifactId>
                <version>3.0.0-M4</version>
            </plugin>
        </plugins>
    </reporting>
  

После этого добавьте команду maven в свою сборку maven, как показано.

введите описание изображения здесь

После запуска этого ваша IDE запустит все тесты в этой сборке maven и сгенерирует surefire.html отчет, который можно найти в target/site/surefire-report.html (Возможно, вам потребуется обновить свой проект maven, чтобы папка появилась в первый раз, щелкнув правой кнопкой мыши проект, затем наведите указатель мыши на maven и нажмите обновить проект maven.)

Я бы посоветовал сделать это, поскольку затем он работает с jenkins, когда запускает ваши тесты в безголовом режиме, который затем может быть прикреплен к вашему плагину расширения электронной почты.

Комментарии:

1. Если вы запустите тест из своей IDE, вы получите отчет автоматически, нет необходимости генерировать репозиторий HTML через отчет surefire?…

2. Вы делаете да, однако, если вы запускаете тесты без головы в jenkins и хотите, чтобы отчет был отправлен вам по электронной почте, вы можете получить отчет surefire html, чтобы отправить его как часть электронного письма для простого и понятного вывода ситуации 🙂

3. Если вы используете Jenkins, вам следует настроить это в Jenkins с помощью шаблона электронной почты и т.д. Намного проще и быстрее…

4. Шаблон электронной почты jenkins настроен, однако, как я уже говорил выше, я хотел, чтобы отчет отправлялся по этому электронному письму… Когда вы запускаете jenkins, в результате появляется много информации, полезно иметь хороший, хорошо структурированный отчет, прикрепленный к электронному письму. Отчет предоставляет простой способ увидеть, что не удалось и прошло.

5. Я настоятельно рекомендую заглянуть в плагины. jenkins.io/email-ext