• HttpRunner 参数化数据驱动


    HttpRunner 2.0 参数化数据驱动案例,废话不说,直接上干货。

    1、测试用例目录结构

         api:接口集

         testcases:测试用例

         testsuites:测试套件

         data:测试数据

          

    2、api 接口集

     create1.yaml:

    name: 创建外方
    variables:
        -   customerName: 姓名
        -   customerGender: male
        -   customerBirth: 1998-09-09T00:00:00+0800
        -   resName: 姓名
    request:
        method: POST
        url: $url/out_visits
        headers:
            Accept: application/json;charset=UTF-8
            Content-Type: application/json
        json:
            customerName: $customerName
            customerGender: $customerGender
            customerBirth: $customerBirth
            resName: $resName
    params: extract:
    - visitId: content.responseBody.id validate: - eq: - status_code - 200 - eq: - content.status - $status - eq: - content.responseBody.resName - $resName - eq: - content.responseBody.customerBirth - $customerBirth

    为了演示执行2个接口,在创建一个create2.yaml文件,代码与create1.yaml内容一样

    3、testcases 测试用例

    testcases_1.yaml:

    - config:
        name: "创建外方1"
        id: 创建外方1
    
    - test:
        name: 创建外方1_$msg
        api: api/create1.yaml

    testcases_2.yaml:

    - config:
        name: "创建外方2"
        id: 创建外方2
    
    - test:
        name: 创建外方2_$msg
        api: api/create2.yaml 

    4、testsuites 测试套件

    testsuites_1.yaml:

    config:
        name: "单接口测试testsuites"
    testcases:
        create1:
            testcase: testcases/testcases_1.yaml
            parameters:
                resName-status-customerBirth-msg: ${P(data/account1.csv)}
        create2:
            testcase: testcases/testcases_2.yaml
            parameters:
                resName-status-customerBirth-msg: ${P(data/account2.csv)}

     5、data 测试数据

    account1.csv:

    resName,customerGender,status,customerBirth,msg
    xingming,male,SUCCESS,1998-09-09T00:00:00+0800,create1_resName为字母
    姓名,male,SUCCESS,1998-09-09T00:00:00+0800,create1_resName为汉字
    姓名3,male,ERROR,1998-09-08T00:00:200+0800,create1_customerBirth日期格式不正确失败

     account2.csv:

    resName,customerGender,status,customerBirth,msg
    xingming,male,SUCCESS,1998-09-09T00:00:00+0800,create2_resName为字母
    姓名,male,SUCCESS,1998-09-09T00:00:00+0800,create2_resName为汉字
    姓名,male,ERROR,1998-09-08T00:00:200+0800,create2_customerBirth日期格式不正确失败

    6、运行

    # 执行用例
    httprunner  --dot-env-path dev.env testsuites/testsuite_1.yaml

    参考:https://cn.httprunner.org/advanced/parameters/

     
  • 相关阅读:
    android的布局xml文件如何添加注释?
    安卓xml布局中 android:paddingBottom="@dimen/activity_vertical_margin"是什么意思?
    Failure [INSTALL_FAILED_OLDER_SDK]
    安装并使用PICT,生成测试用例
    安装并使用Junit
    SourceMonitor的安装
    FindBugs
    pdm的说明
    Checkstyle的安装与使用
    白话决策树
  • 原文地址:https://www.cnblogs.com/snailgirl/p/10309519.html
Copyright © 2020-2023  润新知