HttpRunner学习总结—TestSuite 参数化(parameterze及debugtalk.py)

HttpRunner的参数化 通常有三种

1.在YAML/JSON中指定参数:适合参数列表比较小的情况,好处是简单

2.内置parameterze(P) 函数引用CSV文件:适合数据量较大的情况,需提前准备CSV文件

3.调用debugtalk.py中自定义的函数生成参数列表:最灵活,需要动态生成参数时可选择此方式

 第一个不用说了

第二个:先新建一个文件夹用来保存测试数据,叫data

新建一个csv文件,准备好测试数据,参数,参数  以这种格式存入

 然后新建测试用例集 ,调用用例 以及读取csv中的数据赋值

使用参数的语法${P(数据文件相对路径)}

P是内置函数,parameterze的简称

config:
    name: 用例集-调用csv

testcases:
  -
    name: 登录
    testcase: testcases/test_login_fa.yml
    parameters:
        username-password: ${P(data/data.csv)}

写完后,hrun 执行,查看结果

 第三点:

在debugtalk中先定义一个方法,确认测试通过后

def get_account(num):
    # 生成测试账号
    accounts=[]
    for i in range(1,num+1):
        accounts.append({'username':'1876710500%s'%i,'password':'Aa1234567!'})

    return accounts
 
if __name__=='__main__':
    print(get_account(8))

 用例集中调用写好的函数,生成8条数据登录,执行后查看报告

config: 
  name: 引用函数参数化

testcases:
-
    name: 登录
    testcase: testcases/test_login_se.yml
    parameters:
        username-password: ${get_account(8)}