写一个Jmeter非GUI模式的批处理文件吧

本人才疏学浅,本篇主要用于记录自己学习过程。如果不想看步骤的,可以直接看第5部分。


1. 命令行执行Jmeter最简单的命令是:

Jmeter -n -t XX系统.jmx -l XX系统.jtl
-n是非GUI模式执行,-t是被执行脚本文件 -l是输出执行结果 (日志是自动输出的,也可以手动指定 -j XX系统.log)


2. 但正常情况下,我们还需要实时设定线程数、启动周期时间。所以可以借助Jmeter的P函数。

我们可以在函数助手中找到它。


比如最常见的是这三个参数,都设定为P函数。


执行方式是,在cmd中进入脚本所在文件夹执行如下语句(Jmeter要配置环境变量)

Jmeter -JthreadCount=10 -JinSeconds=5 -Jcycle=1 -n -t XX系统.jmx -l XX系统.jtl -j XX系统.log

-J加上函数名称,注意:没有空格,是连起来的。


3. 每次执行还是很麻烦,现在用批处理来执行一个简单方便的批处理文件吧。把这段内容保存为.bat文件。

echo off
call Jmeter.bat -JthreadCount=10 -JinSeconds=5 -Jcycle=1 -n -t XX系统.jmx -l XX系统.jtl -j XX系统.log
pause

4. 优化一下批处理脚本,我们让之前设定的变量都由执行时来获取。

echo off

rem 获取用户输入的值
set threadCount=
set /p threadCount= 请输入线程数:
set inSeconds=
set /p inSeconds= 请输入启动周期(秒):
set cycle=
set /p cycle= 请输入循环次数:

rem 执行脚本
call Jmeter -JthreadCount=%threadCount% -JinSeconds=%inSeconds% -Jcycle=%cycle% -n -t XX系统.jmx -l XX系统.jtl -j XX系统.log

pause


执行一下,效果如下。



5. Jmeter的输出文件都是续写的,想按日期归类的话,也很简单。在输出命令路径上定义文件名字+日期就好了。

echo off

rem 创建文件夹
mkdir "Jtl文件"

rem 生成当前日期
FOR /F "TOKENS=1,2 eol=/ DELIMS=/ " %%A IN ('DATE/T') DO SET yyyy=%%A
FOR /F "TOKENS=1,2 DELIMS=/ eol=/" %%A IN ('DATE/T') DO SET mm=%%B
FOR /F "TOKENS=2,3 DELIMS=/ " %%A IN ('DATE/T') DO SET dd=%%B
set date=%yyyy%%mm%%dd%
set tmp_time=%time:~-11,2%%time:~-8,2%%time:~-5,2%
set time=%tmp_time: =%
set d=%date%%time%
echo 当前日期: %d%

rem 获取用户输入的值
set threadCount=
set /p threadCount= 请输入线程数:
set inSeconds=
set /p inSeconds= 请输入启动周期(秒):
set cycle=
set /p cycle= 请输入循环次数:
echo 线程数: %threadCount%, 启动周期(秒): %inSeconds%, 循环次数: %cycle%

rem 换行
echo.

rem 执行脚本
call Jmeter.bat -JthreadCount=%threadCount% -JinSeconds=%inSeconds% -Jcycle=%cycle% -n -t 非GUI积分系统.jmx -l Jtl文件/积分系统_%d%.jtl -j Jtl文件/积分系统_%d%.log
pause

这样每次执行的结果就分开了,也方便查找。



  • 3
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 7
    评论
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值