httprunner-框架简介

本文介绍了httprunner,一个支持yaml、json和pytest的通用开源测试框架,可用于自动化测试和持续集成,涵盖了参数化、HAR转换、命令行运行以及验证等功能。
摘要由CSDN通过智能技术生成

httprunner是一款面向https协;议的通用开源测试框架,支持三种用例:yaml/json/pytest代码,即可实现自动化测试、持续集成等多种测试需求

httprunner

参数名

功能

-V --version

查看版本号

-h,--help

查看帮助

run

运行yaml,json,pytest测试用例

httprunner run xxx.py

startproject

使用模板结构创建新项目

httprunner starproject 项目名称

har2case

HAR转成yaml/json

httprunner run har2case.har

make

yaml/json测试用例转成pytest用例

httprunner make 包名称

har2case

参数名

功能

-2y

将bar数据转换成yaml文件格式

har2case -2y xxx.har

-2j

将bar数据转换成json文件格式

har2case -2j xxx.har

--filter

执行用例时只执行包含xxx地址的用例

har2case -2y xxx.har --filter 49.235.92.12:8201

--exclude

执行用例时不执行包含xxx地址的用例

har2case -2y xxx.har --exclude www.baidu.com

测试用例结构

get_params.yaml文件

config:
  name:get_goods
teststeps:
-
  name:step_goods
  request:
      method:GET
      url:https://
      params:
         page: 1
         size: 2
  validate:
  - eq:[status_code,200]
  - eq:[body.code,0]
  - eq:[body.msg,success]
  
  命令行运行 hrun testcase/get_params.yaml
get_params.yaml文件
将base_url提到config中

config:
  name:get_goods
  base_url:https://xx.xxx.xx.x:8001
teststeps:
-
  name:step_goods
  request:
      method:GET
      url:/api/v1/goods
      params:
         page: 1
         size: 2
  validate:
  - eq:[status_code,200]
  - eq:[body.code,0]
  - eq:[body.msg,success]
  
  命令行运行 hrun testcase/get_params.yaml
get_https.yaml
需要验证证书

config:
    name:https_blog
    
teststeps:
-
  name:https_blog
  request:
      method:GET
      url:https://
      verify:False
        
login_urlencoded.yaml
post请求

config:
    name:login-v4
    
teststeps:
-
  name:step-login
  request:
      method:POST
      header:
          Content-type:
      url:https://
      data:
          username:admin
          password:"123456"
        
login_urlencoded.yaml
post请求-全局变量

config:
    name:login-v4
    variables:
        user:test1
        psw:"12356"
    
teststeps:
-
  name:step-login
  request:
      method:POST
      header:
          Content-type:
      url:https://
      data:
          username:$user
          password:%psw
        
validata 校验结果
使用jmespath提取JSON影响正文并使用预期值进行验证
1.jmes_path:jmespath表达式
2.expect预期值:这里也可以使用指定的预期值、变量或函数引用
3.message消息(可选):用于指定断言错误原因

  validate:
  - eq:[status_code,200]
  - eq:[headrs. Content-type,applicatin/json]
  - eq:[body.code,0]
  - eq:[body.msg,success]

  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值