httprunner自动化框架入门教程(下)

接上篇教程,这期教程会针对多用例情况下如何使用!
httprunner自动化框架入门教程(下)_第1张图片
假如现在有3条用例,可以这么写

- config:
    name: 院校查询的接口集
    request:
    base_url: https://gaokao.afanti100.com
            
- test:
    name: 查询中山大学
    request:
        url: /api/v1/universities/
        method: GET
        params:
            keyword: 中山大学
			page: 1
- test:
    name: 查询华南理工大学
    request:
        url: /api/v1/universities/
        method: GET
        params:
            keyword: 华南理工大学
			page: 1
- test:
    name: 查询暨南大学
    request:
        url: /api/v1/universities/
        method: GET
        params:
            keyword: 暨南大学
			page: 1
    validate:
        - eq: [status_code, 200]
        - eq: [content.meta.msg, "success"]

现在来看看运行结果
httprunner自动化框架入门教程(下)_第2张图片
测试报告如下
httprunner自动化框架入门教程(下)_第3张图片
问题来了,如果有n多条测试用例,要一条一条去写吗?既然叫自动化测试,那势必要简单,而不需要太多人工操作。接下来就来讲讲怎么参数化
1、在debugtalk.py的同级目录(貌似必须这个目录)下建个csv文件,这里命名为keyword.csv,内容如下所示
httprunner自动化框架入门教程(下)_第4张图片
2、api目录下新建一个yml文件,这里命名为api_test.yml,内容如下

name: 
request:
    url: https://gaokao.afanti100.com/api/v1/universities/
    method: GET
    params:
        keyword: $keyword
        page: 1

3、在testcace目录下新建个yml文件,这里命名为testcace00.yml,内容如下

teststeps:
-
    name: $title  #用例名称
    api: C:\Python\Python36\Scripts\林家小猪\api\api_test.yml
    validate: #验证点
        - eq: ["status_code", 200]
        - eq: [content.meta.msg, "success"]

4、在testsuites目录下新建个yml文件,这里命名为testsuite00.yml,内容如下

testcases:
-
    name: 查询院校集合
    testcase: testcases/testcace00.yml
    parameters:
        - title-keyword: ${P(keyword.csv)}#引用csv文件

下面来运行下,输入命令,运行的是testsuites目录下的yml文件

hrun C:\Python\Python36\Scripts\林家小猪\testsuites\testsuite00.yml

现在来看看测试报告,在reports目录下,打开最新的报告
httprunner自动化框架入门教程(下)_第5张图片
注意
1、csv文件如果出现utf-8之类的报错,那么就设置下单元格格式,具体怎么设置就自己调试下了,我这边的格式是“常规”
2、hrun2.0之后的版本是不可以直接把yml文件和csv文件放在同个目录下去执行,必须严格按照上方操作步骤来
3、格式要严谨,比如说冒号后面一定要空一个位置,如method: GET

你可能感兴趣的:(自动化测试,软件测试,软件测试)