httprunner学习28-yaml文件 参数化读取 csv 文件字符串转 int

前言

使用 httprunner 框架参数化时,一般参数数据放csv文件,csv 文件默认都是字符串类型,有些接口需传 int 类型的数字。
当读取csv文件的数据后,需进行数据转换,参考前面一篇https://www.cnblogs.com/yoyoketang/p/13711504.html

csv文件参数化数据

key1_key2.csv 文件内容,这里123456读出来默认是字符串类型

key1,key2
test1,123456
test2,123456
test3,123456
test4,123456

我们期望在接口里面传的时候转成int类型,可以在 debugtalk.py 写个辅助函数解决。

# debugtalk.py
# 作者-上海悠悠 QQ交流群:717225969
# blog地址 https://www.cnblogs.com/yoyoketang/

def int_to_str(arg):
    return str(arg)


def str_to_int(arg):
    return int(arg)

yaml 参数化案例

使用${P(key1_key2.csv)} 引用参数,${str_to_int($key2)}将参数key2转成int类型

# xxxx.yml
# 作者-上海悠悠 QQ交流群:717225969
# blog地址 https://www.cnblogs.com/yoyoketang/

- config:
    name: 参数化数据类型转换
    parameters:
        - key1-key2: ${P(key1_key2.csv)} # 参数化
    request:
        base_url: http://httpbin.org
- test:
    name: key2 字符串转int
    request:
        url: /post
        method: POST
        headers:
            Content-Type: application/json
        json:
            keyname1: $key1
            keyname2: ${str_to_int($key2)}
    validate:
        - eq: [status_code, 200]

抓包查看运行结果


httprunner 2.x实战教程点我 ->立即报名

posted @ 2020-09-22 13:33  上海-悠悠  阅读(1811)  评论(2编辑  收藏  举报