如何使用Taurus按顺序依次执行多个JMeter测试脚本
Taurus 顺序执行多个JMeter脚本实现方案
Taurus默认多个测试任务会并行执行,你可以通过以下两种方式实现按顺序串行执行脚本,保证初始化脚本完全执行完成后再运行业务脚本:
方式一:通过YAML配置文件开启顺序执行
直接在Taurus的YAML配置文件中声明所有需要执行的脚本,开启sequential开关即可按配置顺序执行:
execution: - sequential: true # 开启全局顺序执行模式,所有后续执行项按声明顺序串行运行 - scenario: script: init_setup.jmx # 第一个执行的初始化配置脚本 hold-for: 0 # 脚本执行完成后直接退出当前阶段,无额外等待 - scenario: script: business_test1.jmx # 初始化完成后执行的第一个业务测试脚本 hold-for: 0 - scenario: script: business_test2.jmx # 前一脚本执行完成后执行的第二个业务测试脚本 hold-for: 0 modules: jmeter: # 可填写你本地的JMeter安装路径,省略时Taurus会自动识别或下载适配版本 path: /your_local_path/jmeter
执行时直接运行bzt your_config.yaml即可。
方式二:通过脚本顺序调用Taurus命令
无需修改配置,直接在系统的Shell/批处理脚本中按顺序调用Taurus命令,操作系统会自动等待前一个命令执行完成再启动下一个:
- Linux/macOS Shell示例:
# 先执行初始化脚本 bzt init_setup.jmx # 初始化完成后执行第一个业务脚本 bzt business_test1.jmx # 前一脚本完成后执行第二个业务脚本 bzt business_test2.jmx
- Windows 批处理示例:
bzt init_setup.jmx bzt business_test1.jmx bzt business_test2.jmx
注意事项
- 如果需要某个环节执行失败后直接终止后续所有脚本,可在执行
bzt命令时添加-x参数,例如bzt -x your_config.yaml,任意执行项返回非0退出码时都会直接停止整个流程。 - 若初始化脚本包含异步执行的后置操作,可调整对应execution项的
hold-for参数,设置额外等待时长保证初始化操作完全落地。
内容的提问来源于stack exchange,提问作者user1934513
相关产品推荐
相关产品推荐

