3 つのファイルを生成する Maven Surefire レポートがあります。
TESTS-TestSuites.xml - shows only passing tests. no info about fails or errors.
TEST-me.qa.MyTest.xml - see below
me.qa.MyTest.txt - file containing console output showing exceptions
失敗した各テストは、次のようにTEST-me.qa.MyTest.xmlファイルにエラーを示します。
<testcase name="testIPcheckCanCalculate" classname="me.qa.TestLogChecks" time="0.016">
<failure message="Average is too low: 0.5357142857142857. Min: 20.0"
type="java.lang.AssertionError">java.lang.AssertionError: Average is too low:
0.5357142857142857. Min: 20.0
at org.junit.Assert.fail(Assert.java:88)
at org.junit.Assert.assertTrue(Assert.java:41)
at me.qa.TestLogChecks.testIPcheckCanCalculate(TestLogChecks.java:230)
</failure>
<system-out>Testing InPreparer.getInv().getSomething().checkCanCalculate() ...
</system-out>
</testcase>
maven-antrun-plugin は、例外エラー (および失敗) を示す HTML レポートを生成できますか? 現在、junit-noframes.html と呼ばれる JUNit 出力ファイルは、TESTS-TestSuites.xmlの情報のみを表示するため、失敗情報はまったく表示されません (私のインクルードは *.xml 用ですが)。私の回避策は、 me.qa.MyTest.txtファイル内も調べてエラーの内容を確認することですが、これらのエラーをレポートに表示し、失敗したテストの総数もレポートに表示したいと考えています。
これが私のMaven設定です:
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<id>test-reports</id>
<phase>test</phase>
<configuration>
<tasks>
<junitreport todir="target/surefire-reports">
<fileset dir="target/surefire-reports">
<include name="**/*.xml" />
</fileset>
<report format="frames" todir="target/surefire-reports" />
</junitreport>
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>ant</groupId>
<artifactId>ant-junit</artifactId>
<version>1.6.5</version>
</dependency>
<dependency>
<groupId>org.apache.ant</groupId>
<artifactId>ant-trax</artifactId>
<version>1.8.0</version>
</dependency>
</dependencies>
</plugin>
または、これはすべて間違っていますか? Surefire 自体が適切なレポートを生成できますか?