python接口自动化框架

相信很多小伙伴在学习或者在面试过程中都会被问到,有没有做过接口测试?如何搭建的自动化框架,请简单说下你的框架。

在python中基本常使用的是unittest或者pytest框架,pytest是基于unittest的二次封装。个人觉得框架这种东西,够用就好,能够满足我们的需求即可,后续代码能力上去了,可以再基于unittest做二次封装。

在python中,要执行一段代码,首先要依赖一个requests的三方模块。这个时候我们可以用requests库来模拟我们的一个接口测试的动作。类似于我们的postman中的一个get请求或者post请求~

接口的几大要素:协议,url,请求方式,入参和出参

在python中也是必须这几大要素。

那我们发现写测试用例的时候,很多内容都是重复的,重复得代码。这样的代码看起来很长,也不利于后续维护,而且也要分好几个文件夹放不同的接口的代码。我们就需要使用到unittest的几个能力了。首先是testcase测试用例,然后用测试套件将这些用例组装起来(或者是testloader),如果有前置条件或者后置条件注意添加setup或者teardown。最后run这个代码就行。

但在实际工作中,我们一般会将请求参数中的协议域名和请求头信息放在data的基础配置的文件中,然后在yaml中进行数据驱动,放置我们需要测试的入参的各种情况,入参的数据可以放在配置文件下,便于后续代码的维护。后续就是一些python的公共的方法一般放在commom中,例如读取yaml文件的方法,api请求的封装的get或post,delete的方法,还有一些日志输出等的方法。。当然在接口自动化中很重要的一部分是存放日志的log文件和接口自动化的测试报告,以上基本就是我们的一个自动化框架,比较容易上手,也便于后续维护。

你可能感兴趣的:(自动化,运维)