maven插件的学习---maven-surefire-plugin测试运行器

阅读更多
1.maven-surefire-plugin简介
Maven本身并不是一个单元测试框架,它只是在构建执行到特定生命周期阶段的时候,通过插件来执行JUnit或者TestNG的测试用例。这个插件就是maven-surefire-plugin,也可以称为测试运行器(Test Runner),它能兼容JUnit 3、JUnit 4以及TestNG。

在默认情况下,maven-surefire-plugin的test目标会自动执行测试源码路径(默认为src/test/Java/)下所有符合一组命名模式的测试类。

默认情况下,surefire会执行文件名以Test开头或结尾的测试用例,或者是以TestCase结尾的测试用例。
这组模式为:
**/Test*.java:任何子目录下所有命名以Test开关的Java类。
**/*Test.java:任何子目录下所有命名以Test结尾的Java类。
**/*TestCase.java:任何子目录下所有命名以TestCase结尾的Java类。
2.maven-surefire-plugin的使用

如果说maven意见有了maven-surefire-plugin的默认配置,我们还有必要了解maven-surefire-plugin的配置么?答案是肯定的。虽说maven-surefire-plugin有默认配置,但是当需要修改一些测试执行的策略时,就有必要我们去重新配置这个插件了。

2.1.配置JUnit

2.1.1.插件自动匹配

最简单的配置方式就不配置或者是只声明插件。

   
        org.apache.maven.plugins
        maven-surefire-plugin
        2.19
   

2.1.2.插件手动匹配

当然,如果你明确用的是JUnit4.7及以上版本,可以明确声明:


    org.apache.maven.plugins
    maven-surefire-plugin
    2.19
   
       
            org.apache.maven.surefire
            surefire-junit47
            2.19
       

   


3.包含与排除测试用例
如果由于历史原因,测试类不符合默认的三种命名模式,可以通过pom.xml设置maven-surefire-plugin插件添加命名模式或排除一些命名模式。
[html] view plain copy

 
    org.apache.maven.plugins 
    maven-surefire-plugin 
    2.5 
     
         
            **/*Tests.java 
       
 
         
            **/*ServiceTest.java 
            **/TempDaoTest.java 
       
 
   
 
 



你可能感兴趣的:(maven)