Cucumber Maven:生成测试报告后执行逻辑

问题描述 投票:0回答:2

我使用黄瓜maven来创建我的测试自动化框架。测试执行完成后,将生成黄瓜reports.json。我必须从这个json文件中获取一些失败信息并将此失败发送到splunk。

为此,我可以从该cucumber.json文件中提取我想要的必要细节。但是我在哪里可以在自动化框架中包含这些实现?只有在完成测试执行后才会生成Cucumber.json。根据我的要求,一旦cucumber.json生成,从json获取必要的失败细节并将该细节发送到spunk ..

是否有可能在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>
java maven cucumber
2个回答
0
投票

我不知道这是否已经解决了。我的解决方案是(几年前)调用外部(python)脚本。并在该脚本中等待文件存在,然后用它做一些事情。

那时候我没有找到办法在测试中做到这一点。

也可能值得考虑在splunk中添加json作为资源,并在那里进行查询。


0
投票

回答我的问题是。我修改了我的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>
© www.soinside.com 2019 - 2024. All rights reserved.