Maven之Surefire插件

原创 2013年12月30日 17:35:39

在编写写Junit脚本后,进行全网回归的时候,肯定会接触Maven的surefire插件。

基本配置如下:

	<plugin>
		<groupId>org.apache.maven.plugins</groupId>
		<artifactId>maven-surefire-plugin</artifactId>
		<configuration>
			<argLine>-Xmx1024m -XX:PermSize=256m -XX:MaxPermSize=256m</argLine>  
			<additionalClasspathElements>
				<additionalClasspathElement>
					${basedir}/target/test-classes
				</additionalClasspathElement>
			</additionalClasspathElements>
			<includes>
				<include>**/*Test.java</include>
			</includes>
			<excludes>
				<exclude>**/TestConstants.java</exclude>
			</excludes>
			<forkMode>pertest</forkMode>
		</configuration>
	</plugin>

Maven运行测试用例时,是通过调用maven的surefire插件并fork一个子进程来执行用例的。forkmode属性中指明是要为每个测试创建一个进程,还是所有测试在同一个进程中完成。


forkMode 可设置值有 “never”, “once”, “always” 和 “pertest”。


pretest: 每一个测试创建一个新进程,为每个测试创建新的JVM是单独测试的最彻底方式,但也是最慢的,不适合hudson上持续回归。
once:在一个进程中进行所有测试。once为默认设置,在Hudson上持续回归时建议使用默认设置。
always:在一个进程中并行的运行脚本,Junit4.7以上版本才可以使用,surefire的版本要在2.6以上提供这个功能,其中 threadCount:执行时,指定可分配的线程数量。只和参数parallel配合使用有效。默认:5。

<forkMode>always</forkMode>
<parallel>methods</parallel>
<threadCount>4</threadCount>

surefire里还有其它一些有趣的参数,如果有兴趣,你可以访问
http://maven.apache.org/plugins/maven-surefire-plugin/examples/inclusion-exclusion.html 来了解更多信息。

相关文章推荐

Maven中测试插件(surefire)的相关配置及常用方法

maven-surefire-plugin的 高级用法 和 配置详解 使用surefire配置 testNG和Junit测试在项目中...

maven-surefire-plugin小常识

前段时间商品线Hudson上的脚本运行速度非常慢,从命令输出中发现,每运行一个test都容器启动、初始化,在叶渡、景升同学的不懈努力排查下终于找到了原因,尽管花费了很长时间,但是我们还是有收获的,下面...

Apache Maven项目提供的Surefire插件详解

Surefire插件用于Maven项目的test阶段,以执行单元测试。最新版本是2015.12.31发布的2.19.1。 1.插件goal Surefire插件包含的唯一goal就是sur...

maven与jacoco插件配置单元测试覆盖率

1.在pom.xml下级下添加内容 org.apache.maven.plugins maven-surefire-plugin ...
  • lxxc11
  • lxxc11
  • 2016年03月06日 21:45
  • 6019

TestNG中的组groups概念

在TestNG中,组groups的概念主要是相对于测试方法而言的。即,将具有相似功能的测试方法分组,这样在定义测试用例的时候就可以以组为单位加入对应的测试方法。 总体来讲,组的定义可以有两种途径:一...

windows下比较比较好用的git客户端有2种

windows下比较比较好用的git客户端有2种: 1. msysgit + TortoiseGit(乌龟git) 2. GitHub for Windows...

maven surefire 插件源码修改,自定义输出格式

一.背景在使用maven surefire插件命令:mvn test -Dtest=测试类进行测试时,对于stdout信息进行识别能迅速的发现问题,当你某个suite类聚合了几千个用例时,失败数往往有...
  • neven7
  • neven7
  • 2015年09月09日 16:45
  • 972

Maven中测试插件(surefire)的相关配置及常用方法

1. 在Maven中配置测试插件surefire [html] view plain copy plugin>    groupId>org.apache.mav...

maven surefire plugin介绍

1.surefire plugin的作用 surefire 插件用来在maven构建生命周期的test phase执行一个应用的单元测试。它会产生两种不同形式 的测试结果报告: 1).纯文本 ...

Maven学习12之跳过测试时surefire 2.19.1版本错误

错误: [INFO] Scanning for projects... [INFO] ...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Maven之Surefire插件
举报原因:
原因补充:

(最多只允许输入30个字)