0

我有以下 taurus yaml 场景,其中包含 40 个迭代和 40 个 json 文件。我在 body-file 标签中传递了这 40 个 body json 文件。但是当我运行 yaml 时,我只能看到一个请求在运行,而不是全部 40 个。请在这方面提供帮助。

execution:
- concurrency: 1
  iterations: 40
  hold-for: 0s
  ramp-up: 0s
  scenario: queryData
  delay: 0s

queryData:
    #data-sources:
    #- /bzt/bzt_artifacts/query.csv
      #delimiter: ","
    requests:
    - include-scenario: authCToken
    - label: queryData
      method: POST
      url: ${TARGET_URL}
      headers:
        X-TR-Correlation-Id: ""
        Authorization: "${authc_token}"
        Content-Type: application/json
        Accept: application/json
      #DNT: 1
      body-file: /bzt/bzt_artifacts/test1.json, test2.json etc., test100.json
4

1 回答 1

0

my-sources.csv为数据源创建文件:

test1
test2
...
test100

创建一个配置my-plan.yml

execution:
  - concurrency: 1
    iterations: 40
    scenario: example1
    # other-settings: blah blah blah

scenarios:
  example1:
    requests:
      - url: http://your-domain:8080/api/id/${test_id}
        method: POST
        body-file: data/${test_id}.json
    data-sources:
      - path: my-sources.csv
        delimiter: ","
        quoted: false
        encoding: "utf-8"
        loop: true
        variable-names: test_id
        random-order: false

当前目录的结构如下所示:

.
├── my-sources.csv
├── my-plan.yml
└── data
    ├── test1.json
    ├── test2.json
    .
    .
    .
    └── test100.json

然后你可以通过 Docker 运行这个配置:

$ docker run -it --rm -v `pwd`:/bzt-configs blazemeter/taurus my-plan.yml

参考

于 2021-02-01T10:00:45.277 回答