Httprunner接口自动化测试-第二番

Posted 我爱测试

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Httprunner接口自动化测试-第二番相关的知识,希望对你有一定的参考价值。

打字不易,关注鼓励


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


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

所以


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


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

用例文件选择yaml或者json都可以,yaml文件的优点在于格式清晰,但是对缩进要求很严格。json文件的缺点是符号太多,看起来很累,但是有些请求传入json格式参数并存在嵌套时,使用json文件编写会比较简洁

Httprunner接口自动化测试-第二番

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


二、用例运行模式详解

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

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

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

Httprunner接口自动化测试-第二番

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


三、参数化配置与使用

参数化的几种使用方式:

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

test1-123456 

test1-654321

test2-123456

test2-654321

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

Httprunner接口自动化测试-第二番

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

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

test1-123456

test2-654321

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

Httprunner接口自动化测试-第二番

3.引用参数文件

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

Httprunner接口自动化测试-第二番

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

Httprunner接口自动化测试-第二番


四、怎么看执行后的情况

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

Httprunner接口自动化测试-第二番

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

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

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


以上是关于Httprunner接口自动化测试-第二番的主要内容,如果未能解决你的问题,请参考以下文章

接口自动化测试选型-httpRunner

Python接口自动化测试框架(工具篇)-- 接口测试工具HTTPRUNNER

HttpRunner接口自动化框架的使用

HttpRunner接口自动化测试框架--常见问题

HttpRunner接口自动化测试框架

接口自动化框架httprunner--查看测试报告