TestNG自带的测试报告不是很好用,所以一般结合reportng生成美观的测试报告。
首先,在pom.xml中添加testng和reportng相关依赖
<dependencies> <!-- 添加testNG依赖 --> <dependency> <groupId>org.testng</groupId> <artifactId>testng</artifactId> <version>6.11</version> <scope>test</scope> </dependency> <!-- 添加reportNG依赖 --> <dependency> <groupId>org.uncommons</groupId> <artifactId>reportng</artifactId> <version>1.1.2</version> <scope>test</scope> <!-- 排除testNG依赖 --> <exclusions> <exclusion> <groupId>org.testng</groupId> <artifactId>testng</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>com.google.inject</groupId> <artifactId>guice</artifactId> <version>3.0</version> <scope>test</scope> </dependency> </dependencies>
pom.xml中配置maven-surefire-plugin并加入reportng listener
<properties> <xmlFileName>testng.xml</xmlFileName> </properties> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.19</version> <configuration> <skipTests>false</skipTests> <suiteXmlFiles> <suiteXmlFile>${xmlFileName}</suiteXmlFile> </suiteXmlFiles> <properties> <property> <name>usedefaultlisteners</name> <value>false</value> </property> <property> <name>listener</name> <value>org.uncommons.reportng.HTMLReporter,org.uncommons.reportng.JUnitXMLReporter</value> </property> </properties> <forkMode>always</forkMode> </configuration> </plugin> </plugins> </build>
在testng.xml中<suite>标签加入listener
<listeners> <listener class-name="org.uncommons.reportng.HTMLReporter"/> <listener class-name="org.uncommons.reportng.JUnitXMLReporter"/> </listeners>
在Idea中打开Run-Edit Configurations...
在Listeners标签下勾选“Use default reporters”
最后运行testng.xml,自动生成test-output目录,在html目录下找到index.html
打开index.html