httprunner 4.x学习 - 12. 测试用例引用前面一个用例testcase

前言

当登录用例写完后,后面想继续写其他用例,可以导入前面的login用例,当成下个用例的步骤使用
导入前一个用例之前,需先 export 导出变量,变成全局变量。

登录用例

在testcase下新建一个test_login.yml 文件,用于测试登录成功接口信息
testcase/test_login.yml

# 作者-上海悠悠 wx:283340479
# blog地址 https://www.cnblogs.com/yoyoketang/

config:
  name: 测试登录后关联
  variables:
    username: test
    password: 123456
  export:
    - token

teststeps:
-
  name: 登录成功
  request:
      url: http://127.0.0.1:8000/api/v1/login
      method: POST
      json:
        username: ${username}
        password: ${password}
  extract:
      token: body.token
  validate:
      - eq: ["status_code", 200]
      - eq: [body.code, 0]

其他用例需用到登录的场景,可以使用testcase 关键字导入

# 作者-上海悠悠 wx:283340479
# blog地址 https://www.cnblogs.com/yoyoketang/

config:
  name: 测试登录后关联

teststeps:
-
  name: 1.登录后-获取token
  testcase: testcase/test_login.yml

- name: 2.info
  request:
    method: GET
    headers:
      Authorization: Token ${token}
    url: http://127.0.0.1:8000/api/v1/userinfo
  validate:
    - eq: [body.code, 0]

使用testcase 导入前面一个用例,导入用例的路径根据项目根目录使用相对路径
使用hrp 命令运行后生成报告

hrp run testcase/test_info.yml --gen-html-report

export 关键字

如果前面一个用例没有写export ,在后面用例引用的时候,也可以用export 导出变量

# 作者-上海悠悠 wx:283340479
# blog地址 https://www.cnblogs.com/yoyoketang/

config:
  name: 测试登录后关联
  variables:
    username: test
    password: 123456


teststeps:
-
  name: 登录成功
  request:
      url: http://127.0.0.1:8000/api/v1/login
      method: POST
      json:
        username: ${username}
        password: ${password}
  extract:
      token: body.token
  validate:
      - eq: ["status_code", 200]
      - eq: [body.code, 0]

后面用例在步骤中使用export

# 作者-上海悠悠 wx:283340479
# blog地址 https://www.cnblogs.com/yoyoketang/

config:
  name: 测试登录后关联

teststeps:
-
  name: 1.登录后-获取token
  testcase: testcase/test_login.yml
  export:
    - token

- name: 2.info
  request:
    method: GET
    headers:
      Authorization: Token ${token}
    url: http://127.0.0.1:8000/api/v1/userinfo
  validate:
    - eq: [body.code, 0]
posted @ 2023-05-10 17:14  上海-悠悠  阅读(499)  评论(2编辑  收藏  举报