史上最全-使用Httprunner进行接口自动化测试-细节篇

说实话,目前网络上关于 Httprunner3.X 工具的文字资料太少了,有些博客文章还都是之前版本的,甚至是一篇文章照搬很多次。

看的小明气的鼓起了腮帮子

所以

小明一气之下决定整理下Httprunner的使用细节,给铁子们参考

一.用例文件格式详解(yaml/json),下图以yaml文件为例

用例文件选择yaml或者json都可以,yaml文件的优点在于格式清晰,但是对缩进要求很严格

json文件的缺点是符号太多,看起来很累,但是有些请求传入json格式参数并存在嵌套时,使用json文件编写会比较简洁

上面这个图应该够清楚了吧,另外注意:httprunner3.x中paramters只能写在config模块中,请求中不再支持paramters功能

二、用例运行模式详解

httprunner工具的强大之处在于,省去了我们写代码的步骤,可以在yaml文件中将用例配置好直接执行,这一点深受广大测试同行的喜爱。

但是,执行yaml/json文件用例的过程,也是先将yaml/json文件转换为python脚本,再执行python脚本,目前httprunner3.x使用的是pytest测试框架,所以生成的python脚本和我们自己编写的pytest测试框架很相似。

所以,当某个用例文件,调试并执行通过后,可以将对应的.py文件保存下来,后续可以直接执行对应的python脚本

不过httprunner3.x版本在执行用例时,即使用例执行通过也会报“句柄无效问题”,目前该问题无有效解决办法,只能选择人工忽视

三、参数化配置与使用

参数化的几种使用方式:

1.笛卡尔积式执行,图例中,username有两个值,passwd有两个值,所以下面用例执行时读取到的参数组合为:

test1-123456 

test1-654321

test2-123456

test2-654321

所以图例中的登录请求会执行4次

2. 多个参数关联式执行,将username和passwd参数关联起来,形成一对一关系

图例中username,passwd使用横杠连接,按照成对的方式取值,所以登录接口会执行两次,username和passwd的取值分别为:

test1-123456

test2-654321

多个参数关联时,继续在后面加横杠连接即可,这种方式一定要保证参数值的个数,保证对应关系

3.引用参数文件

在用例文件同文件路径下,创建后缀问.csv的文件(表格文件)

username-passwd按照顺序分别读取参数文件中的第一列和第二列,所以参数文件中的数据一定要和参数个数对应的上

四、怎么看执行后的情况

httprunner自带了一个脚手架工具,也就是使用命令行自动创建项目文件结构(作者也是给广大群众减少了不少工作量啊)

使用脚手架工具生成项目路径后,可以在logs文件夹中查看每次执行用例的日志

日志中有详细的执行情况,包括请求头信息、请求详情、请求返回的数据、断言结果等

好啦,本次内容就更新到这里,下一篇文章介绍用例中接口的关联关系,以及debugtalk.py文件的使用,敬请关注

打个广告,大家有兴趣也可以关注我的公众号(ilovetest),我会在上面同步更新文章和部分安装包哦

也可以加入qq群(489650589),一起讨论学习

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值