maven-surefire-plugin小常识

本文分享了在Hudson上优化持续回归测试速度的经验,重点介绍了Maven-surefire-plugin中fork属性的配置,包括预测试、一次运行所有测试、总是并行运行脚本等模式,以及如何选择合适的配置来提高测试效率。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

        Maven的surefire插件中fork属性的配置:  

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

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

  1. pretest: 每一个测试创建一个新进程,为每个测试创建新的JVM是单独测试的最彻底方式,但也是最慢的,不适合hudson上持续回归

 

  

      2.   once:在一个进程中进行所有测试。once为默认设置,在Hudson上持续回归时建议使用默认设置  

  

always:在一个进程中并行的运行脚本,Junit4.7以上版本才可以使用,surefire的版本要在2.6以上,其中 threadCount:执行时,指定可分配的线程数量。只和参数parallel配合使用有效。默认:5 

  

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值