在jenkins脚本测试服务器性能,jmeter+Jenkins自动化性能测试高级用法

问题背景

前两天,自己在搭建好了jmeter+Jenkins自动化性能测试后思考,若有时候我们需要修改并发数、测试时长或者请求地址变了之类的,难道我们需要一个个的去修改脚本么?有么有更加便利的方法?

解决方法

利用Jmeter 命令行下动态化参数传递和Jenkins的build with parameter。(大家有更好的方法,欢迎大家公众号里微我,分享出来一起进步)

具体操作

我们知道JMeter测试计划在运行Sampler之前会先加载运行属性(jmeter.properties,system.properties等)文件,而且JMeter还提供了方法可以动态修改属性,在命令行使用 -J 来指定JMeter Properties,脚本里面使用__P() 函数来获取命令中指定的属性值。

1、编写jmx脚本

在需要动态化参数的地方按照如下方式填写,此处是对线程数和持续时间进行了定义。

70908ae41bd0ba1f5fe07023a2f8b5f0.png

2、用命令行运行时候增加如下选项。

ca57db085a611d4f1cf18a19db069dda.png

-JthreadCount=${thread_num}为脚本指定的线程数

其中thread_num变量值可以动态的从Jenkins页面自己填写。

-Jduration=${test_time}为测试计划要指定的测试时长

其中test_time变量值可以动态的从Jenkins页面自己填写。

3、配置Jenkins的build with parameter

安装插件build with parameter

e91330befca773274ba49830a65f4048.png

然后在构建的按钮就会变成

88241688383d9808c0897682c1d06d5c.png

这样每次构建都可以动态的传递参数值了,不用再手工去修改脚本。

简要验证

经过上面的配置后,接下来进行简要验证,配置是否正确。大家在点击build with parameter按钮后,弹出如下对话框,在这里我填写的线程数目是15,测试时长是30s。

188a8c0bcb7695cedda990e24ed9b1c8.png

点开构建运行时的控制台输出,可以看到,jmeter命令行正确的获取了前面填写的线程数值和测试时长。OK,大功告成!!!

53fb76cd94226c99f3ad0d15b3d37734.png

ps:大家也可以用类似的方法尝试进行便捷的控制分布式压测。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值