`

Maven2插件surefire配置心得

阅读更多

原文:http://blog.csdn.net/ZHH309/article/details/1893196

 

1、不运行junit测试。
 
 <project>
  [...]
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <configuration>
          <skip>true</skip>
        </configuration>
      </plugin>
    </plugins>
  </build>
  [...]
</project>
 
2、指定要运行的junit测试。
 
默认时,只要是符合以下三种命名规则的junit测试都要运行:
 
1)命名以Test字符开头的类
 
2)命名以Test字符结尾的类
 
3)命名以TestCase字符结尾的类
 
如果我们只要运行其中的一个或者一组测试代码,需要按照以下方式配置:
 
<project>
  [...]
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <configuration>
          <includes>
            <include>Sample.java</include>
          </includes>
        </configuration>
      </plugin>
    </plugins>
  </build>
  [...]
</project>
3、指定不运行的junit测试。
<project>
  [...]
  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <configuration>
          <excludes>
            <exclude>**/TestCircle.java</exclude>
            <exclude>**/TestSquare.java</exclude>
          </excludes>
        </configuration>
      </plugin>
    </plugins>
  </build>
  [...]
</project>

一、junit运行结果不影响package或者install。
 maven2打包前会运行junit,但是,有时我们希望即使出现了错误,也要打包。maven2的设计者已经考虑到这种情况了。pom.xml文件配置内容如下:
<project>
 [...]
 <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <configuration>
          <testFailureIgnore>true</testFailureIgnore>
        </configuration>
      </plugin>
    </plugins>
 </build>
 [...]
</project>

本文所有的说明均对surefire2.3版本。在pom.xml文件中配置Maven SureFire Plugin插件:
<project>
  [...]
  <build>
    <plugins>
      <plugging>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <configuration>
          ……
        </configuration>
      </plugin>
    </plugins>
  </build>
  [...]
</project>
可以在<configuration>……</configuration>中配置surefire插件的参数。本文以下内容均对configuration结点进行说明。
 

一、      必须的参数:

basedir

project路径。在测试用例中,可以用System.getProperty(“basedir”)获取basedir值。

testClassesDirectory

保存测试用例编译后的文件的路径。
默认值:target/test-classes

testSourceDirectory

保存测试用例源代码的路径。
默认值:src/test/java

二、      可选的参数

disableXmlReport

标识是否不生成xml格式的测试报告。
默认值:false

excludedGroups

要排除的测试组。任何在这里列出的测试组都不执行。

forkMode

可设置值有:never, once or always
默认:once.

groups

如果指定了,只有在组中的用例才会执行。

jvm

指定可运行的java虚拟机(或者指定可运行的java)。
默认:使用和maven相同的虚拟机。

printSummary

执行出错时是否打印错误信息。
默认:true

reportFormat

选择要生成的测试报告的格式。可设置值有:brief ,plain
默认:brief.

reportsDirectory

测试报告生成路径

skipExec

设置为true时,测试用例被编译,但是不会执行。

threadCount

执行时,指定可分配的线程数量。只和参数parallel配合使用有效。
默认:5.

trimStackTrace

是在测试报告中调整堆栈跟踪信息的行数,还是显示所有的跟踪信息。
默认:true

useFile

生成测试报告还是只输出到控制台。
默认:true.
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics