基于文档http://cn.httprunner.org/advanced/data-driven/

HTTPRunner实践二——数据驱动

场景一:用例集+独立参数+参数列表

1、原始用例文件savePatient_01.yml

-   config:
        name: 患者管理-新增患者
        request:
            base_url: 'http://192.168.14.76:8080'
            headers:
                User-Agent: null
        variables: []
-   test:
        name: /myinfo/pinyin4j/converterToFirstSpell
        request:
            method: GET
            params:
                detail: '{"body":{"synCode":"","content":{},"param":{"name":"施耐庵"},"code":{}},"header":{"v":"v_pc_1.0.3.24","doctorMainId":"ff80808162bc9a2f0162f1c2322627ab","clinicId":"8a9a9c745f9b87c3015fdcc1e36b4271","type":"4","imei":"661D-6DF1-B196-3DFE-DE7D-3A01-3AA1-471F","userToken":"20180803105231387f8ueqor"}}'
            url: http://192.168.14.76:8080/myinfo/pinyin4j/converterToFirstSpell
        validate:
        -   eq:
            - status_code
            - 200
        -   eq:
            - headers.Content-Type
            - text/html;charset=UTF-8

2、分析

需要参数化的数据,患者姓名name,如上红色加粗部分。

步骤

1、在config模块中,将需要参数化的数据name,配置为全局参数,并使用列表赋值。

parameters:
- name: ["杜甫", "曹雪芹", "施耐庵"]

2、在test请求中引用name的地方,使用参数替换${name}

params:
                detail: '{"body":{"synCode":"","content":{},"param":{"name":"$name"},"code":{}},"header":{"v":"v_pc_1.0.3.24","doctorMainId":"ff80808162bc9a2f0162f1c2322627ab","clinicId":"8a9a9c745f9b87c3015fdcc1e36b4271","type":"4","imei":"661D-6DF1-B196-3DFE-DE7D-3A01-3AA1-471F","userToken":"20180803105231387f8ueqor"}}'
            url: http://192.168.14.76:8080/myinfo/pinyin4j/converterToFirstSpell

3、断言中如有需要验证name的地方,也进行替换

validate:
        -   eq:
            - status_code
            - 200
        -   eq:
            - content.body.code
            - "0000"
        -   eq:
            - content.body.param.name
            - $name

全部代码实例:

 1 -   config:
 2         name: 患者管理-新增患者
 3         request:
 4             base_url: 'http://192.168.14.76:8080'
 5             headers:
 6                 User-Agent: null
 7         variables: []
 8         parameters:
 9         - name: ["杜甫", "曹雪芹", "施耐庵"]
10 -   test:
11         name: /myinfo/pinyin4j/converterToFirstSpell
12         request:
13             method: GET
14             params:
15                 detail: '{"body":{"synCode":"","content":{},"param":{"name":"$name"},"code":{}},"header":{"v":"v_pc_1.0.3.24","doctorMainId":"ff80808162bc9a2f0162f1c2322627ab","clinicId":"8a9a9c745f9b87c3015fdcc1e36b4271","type":"4","imei":"661D-6DF1-B196-3DFE-DE7D-3A01-3AA1-471F","userToken":"20180803105231387f8ueqor"}}'
16             url: http://192.168.14.76:8080/myinfo/pinyin4j/converterToFirstSpell
17         validate:
18         -   eq:
19             - status_code
20             - 200
21         -   eq:
22             - content.body.code
23             - "0000"
24         -   eq:
25             - content.body.param.name
26             - $name
View Code

相关文章:

  • 2022-01-22
  • 2022-01-20
  • 2022-12-23
  • 2022-12-23
  • 2021-05-14
  • 2021-11-25
猜你喜欢
  • 2022-12-23
  • 2021-11-27
  • 2021-09-05
  • 2022-12-23
  • 2021-10-21
  • 2021-08-28
  • 2021-12-06
相关资源
相似解决方案