详情参照:
http://maven.apache.org/surefire/maven-surefire-plugin/examples/inclusion-exclusion.html
1.maven通过maven-surefire-plugin来运行maven项目中src/test/java文件夹下的testcase:
默认情况下,testcase的命名规范必须是以下三种之一:
- "**/Test*.java" - includes all of its subdirectories and all Java filenames that start with "Test".
- "**/*Test.java" - includes all of its subdirectories and all Java filenames that end with "Test".
- "**/*TestCase.java" - includes all of its subdirectories and all Java filenames that end with "TestCase
Ps:以上命名规范在pom文件中自定义配置,关键代码如下:
<build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.18.1</version> <configuration> <includes> <include>Sample.java</include> </includes> </configuration> </plugin> </plugins> </build>
2.maven通过maven-surefire-plugin插件来运行工程目录主路径下的testng.xml(可配置)
<plugins> [...] <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <version>2.18.1</version> <configuration> <suiteXmlFiles> <suiteXmlFile>testng.xml</suiteXmlFile> </suiteXmlFiles> </configuration> </plugin> [...] </plugins>PS: .xml文件必须在工程的主目录之下。
3.maven集成reportNG生成Html格式的测试报告:
在pom文件的dependencies中新增三个dependency:
velocity /guice /reportng
同时修改上述pom文件的maven-surefire-plugin部分代码:
<configuration>
<suiteXmlFiles>
<suiteXmlFile>testng.xml</suiteXmlFile>
</suiteXmlFiles>
<suiteXmlFiles>
<suiteXmlFile>testng.xml</suiteXmlFile>
</suiteXmlFiles>
<properties>
<!-- Setting ReportNG listeners -->
<property>
<name>listener</name>
<value>org.uncommons.reportng.HTMLReporter, org.uncommons.reportng.JUnitXMLReporter</value>
</property>
</properties>
</configuration>