Windows中添加定时任务,定时执行JMeter脚本

一、背景
测试环境需要造一批数据,但不能一下子全部压过去,服务器承受不住,所以想添加个定时任务,隔一段时间上传一批数据;

二、实现
SCHTASKS命令设置定时启动任务:(SCHTASKS是Windows自带的命令)
注:SCHTASKS 命令参数可百度 搜索下;
(1)创建定时执行任务:

schtasks /create /sc hourly /st 19:18:00 /tn "jmeter" /tr C:\apache-jmeter-5.1.1\bin\TimerRun.bat

(创建名为“jmeter”的定时任务,从19:18:00开始执行,并定时每小时执行一次TimerRun.bat(这个文件里面编写的jmeter的脚本命令:jmeter -n -t C:\apache-jmeter-5.1.1\bin\RegisterSample.jmx))

注意事项
(a)应先设置JMeter系统环境变量,否则找不到Jmeter命令,jmx脚本执行不了;(百度配置环境变量时,有个logkit的jar包,\lib目录下是没有的,不知道做啥用的,为防止出问题,网上下载了一个,下载地址:https://mvnrepository.com/artifact/logkit/logkit)
(b)jmx脚本应写完整路径,否则找不到文件;
(c)jmx脚本命名最好用英文,中文会出现乱码;

(2)搜索定时任务:

SCHTASKS /Query /TN jmeter

(搜索任务名称为jmeter的定时任务)

(3)删除定时任务:

SCHTASKS /Delete /TN "jmeter"

注:若使用SCHTASKS /end /TN “jmeter” 停止定时任务,提示是停止了任务,但实际还是会定时执行任务,故,如果要停止任务,最好直接把定时任务删除;

三、结果
可以定时执行;
在这里插入图片描述

### 配置 Jenkins 定时任务自动触发 JMeter 测试 在 Jenkins 中设置定时任务以自动运行 JMeter 测试,可以通过配置周期性构建(Cron Job)来实现。Jenkins 提供了基于 cron 表达式的调度机制,可以按固定时间间隔或特定时间点触发构建任务。 #### 1. 创建 Jenkins Job 或 Pipeline 首先,在 Jenkins 中创建一个新的自由风格项目(Freestyle Project)或流水线项目(Pipeline)。确保该任务中已经集成了执行 JMeter 脚本的命令,例如: ```bash jmeter -n -t /path/to/testplan.jmx -l /path/to/results.jtl ``` 其中 `-n` 表示非 GUI 模式运行,`-t` 指定测试脚本路径,`-l` 指定输出结果文件路径 [^2]。 #### 2. 配置定时触发器 进入 Jenkins Job 的配置页面,在 **Build Triggers** 部分勾选 **Build periodically** 选项,并在下方输入 cron 表达式定义执行频率。例如: ```cron # 每天凌晨 2 点执行 0 2 * * * ``` 该表达式表示每天 2:00 AM 自动触发一次构建任务。Jenkins 支持标准的 Unix cron 格式,可以根据需求灵活配置执行周期 [^5]。 #### 3. 生成 HTML 报告并发布 为了便于查看测试结果,可以在执行完 JMeter 脚本后,使用 `-g` 参数指定 `.jtl` 文件生成 HTML 报告: ```bash jmeter -n -t testplan.jmx -l results.jtl -g results.jtl -o reports/ ``` 该命令将基于 `results.jtl` 生成可视化报告并保存到 `reports/` 目录下 [^4]。如果需要生成 XML 格式的 `.jtl` 文件以支持 HTML 报告生成,需修改 `jmeter.properties` 文件中的如下配置: ```properties jmeter.save.saveservice.output_format=xml ``` 这样可确保生成的测试数据兼容 HTML 报告引擎 [^3]。 #### 4. 集成性能插件展示趋势 安装并启用 **Performance Plugin** 后,可在 Jenkins 构建后操作中添加步骤解析 `.jtl` 文件,并在界面中展示性能趋势图。对于 Pipeline 类型的任务,可在 Jenkinsfile 中添加如下代码段: ```groovy post { always { performanceReport 'results.jtl' } } ``` 该步骤将在每次构建完成后自动生成性能分析图表,便于长期跟踪测试结果的变化趋势 [^1]。 #### 5. 自动清理历史数据(可选) 为避免旧的测试数据干扰新结果,可以在每次构建开始前删除历史日志和报告目录。例如,在 Windows 批处理命令中添加如下内容: ```bat del result.jtl del jmeter.log rmdir /Q /S reports ``` 这将确保每次执行都从干净环境开始,提升测试结果的一致性和可读性 [^2]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值