我正在尝试在.yml中编写一项金牛座测试,该测试将包含多个方案(例如ping主机请求,在机器上更改主机名,安装java,..)。每种情况都有一个请求,该请求是API调用,带有URL,POST方法和主体。
问题1:
每个方案都应在单独的文件中开发,并且应该以这种方式调用测试:'bzt scenario_1.yml scenario_2.yl,...&quot。
是否有一个解决方案,例如Incluence_scenario,导入?
例如,在Ansible中有include_tasks,所以我可以调用其他.yml脚本,一切都很好。
问题2:
我如何为身体创建某种循环,以便我的API请求将使用不同的参数用于每个分布。因为我正在尝试使用高并发性编写测试,例如ping,更改主机名和安装ubuntu,debian,centos,..
当前代码样本:
---
execution:
- iterations: 2
concurrency: 1000
ramp-up: 20m
scenarios:
ping:
requests:
- url: http://127.0.0.1:12121/ping/
method: POST
label: ping
body-file: ./vars/"{{ping}}"
headers:
Content-Type: application/json
parameters:
- /debian/ping.json
- /ubuntu/ping.json
- /centos7/ping.json
changeHostname:
requests:
- url: http://127.0.0.1:12121/changeHostname/
method: POST
label: ping
body-file: ./vars/"{{change_hostname}}"
headers:
Content-Type: application/json
parameters:
- /debian/hostnameDto.json
- /ubuntu/hostnameDto.json
- /centos7/hostnameDto.json
changeRootPassword:
requests:
- url: http://127.0.0.1:12121/changeRootPassword/
method: POST
label: ping
body-file: ./varss/"{{change_root_password}}"
headers:
Content-Type: application/json
parameters:
- /debian/changeRootPasswordDto.json
- /ubuntu/changeRootPasswordDto.json
- /centos7/changeRootPasswordDto.json
reporting:
- module: console
- module: final-stats
settings:
check-interval: 5s
default-executor: jmeter
provisioning: local
谢谢。
YAML中有一个设置以包括其他配置文件:
included-configs:
- additional-local-file.yml
- another-config.yml
http://gettaurus.org/docs/configsyntax/#included-configs