Cucucmber Maven: выполнение логики после генерации отчета о тестировании - PullRequest
0 голосов
/ 05 июля 2018

Я использую Cucumber Maven для создания моей инфраструктуры автоматизации тестирования. После завершения теста будет создан cucumber reports.json. Я должен получить некоторую информацию об ошибках из этого файла json и отправить эти сбои в spunk.

Для этого я могу извлечь необходимую информацию из файла cucumber.json. Но где я могу включить это дополнение в мою инфраструктуру автоматизации? Cucumber.json будет сгенерирован только после окончания выполнения теста. В соответствии с моим требованием, как только cucumber.json сгенерирует, получите необходимую информацию о сбое от json и отправьте эту информацию. отшлепать ..

Возможно ли это сделать с помощью maven-surefire-plugin. В приведенном ниже классе SendFailure написано логика для извлечения деталей из сгенерированного JSON и отправки деталей в Splunk. Я надеюсь, что он будет выполнен после завершения теста. Но это не работает.

Пожалуйста, предложите подходящий способ справиться с этим.

Мое требование - как только генерируется cucumber.json, я должен получить некоторые детали от этого json. На данный момент я путаюсь, где назвать эту логику?

<build>
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-surefire-plugin</artifactId>
            <version>2.14</version>
            <configuration>
                <testFailureIgnore>true</testFailureIgnore>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>exec-maven-plugin</artifactId>
            <version>1.1.1</version>
            <executions>
                <execution>
                    <phase>test</phase>
                    <goals>
                        <goal>java</goal>
                    </goals>
                    <configuration>
                        <mainClass>com.send.SendFailure</mainClass>
                    </configuration>
                </execution>
            </executions>
        </plugin>
    </build>

Ответы [ 2 ]

0 голосов
/ 05 июля 2018

Ответ на мой вопрос. Я изменил мой файл POM следующим образом, и он работал

    <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.14</version>
        <configuration>
            <testFailureIgnore>true</testFailureIgnore>
        </configuration>
    </plugin>
    <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>exec-maven-plugin</artifactId>
        <version>1.2</version>
        <executions>
            <execution>
                <phase>test</phase>
                <goals>
                    <goal>java</goal>
                </goals>
                <configuration>
                    <mainClass>com.send.SendFailure</mainClass>
                </configuration>
            </execution>
        </executions>
    </plugin>
     </plugins>
0 голосов
/ 05 июля 2018

Я не знаю, было ли это решено. Моим решением для этого было (пару лет назад) вызвать внешний (python) скрипт. И в этом сценарии подождите, пока файл будет существовать, а затем что-то с ним сделайте.

В то время я не нашел способа сделать это из тестов.

Также стоит подумать о том, чтобы добавить json в качестве ресурса в Splunk и выполнить запрос там.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...