我使用黄瓜Maven创建我的测试自动化框架。 测试执行完成后,将生成cummons report.json。 我必须从此json文件中获取一些故障信息,并将这些故障发送给splunk。
为此,我可以从该cucumber.json文件中提取所需的详细信息。 但是我可以在自动化框架中的哪一部分添加呢? 仅在完成测试执行后才会生成Cucumber.json。 根据我的要求,一旦cumcum.json生成,从json获取必要的失败详细信息并发送该详细信息 吓到了。
是否有可能在maven-surefire-plugin的帮助下做到这一点。在下面的SendFailure类中编写 从生成的json中提取详细信息并将详细信息发送到splunk的逻辑,我希望它将执行 测试执行完成后。但这不起作用。
请提出处理此问题的合适方法。
我的要求是cumulant.json生成后,我必须从该json中获取一些详细信息。 目前Iam困惑于在何处调用此逻辑?
<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>
答案 0 :(得分:0)
我不知道这是否已经解决。我对此的解决方案是(几年前)调用外部(python)脚本。然后在该脚本中等待文件存在,然后对其进行处理。
那时,我还没有找到在测试中执行此操作的方法。
也许还值得考虑将json作为splunk中的资源添加,并在那里进行查询。
答案 1 :(得分: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>