Python+unittest+requests 接口自动化测试框架搭建 完整的框架搭建过程 实战

Posted 程序员小濠

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python+unittest+requests 接口自动化测试框架搭建 完整的框架搭建过程 实战相关的知识,希望对你有一定的参考价值。

一、环境准备

​python3.*+pycharm+requests+unittest

二、框架目录介绍

1,Requests模块发送给予http的网络请求,主要包含了POST,GET,PUT, DELETE等

2,python+unittest单元测试框架,构建测试框架,包括测试脚本构成,测试脚本的运行,测试脚本集成,测试报告生成(htmlTestRunner)​

(1) Api:对request请求的封装

(2) Config: 封装一些配置文件(大部分是一些公共文件,存放在配置文件中方便调用)

(3) Runtest: 主运行文件,运行完脚本之后可以生成相应的Html格式的测试报告

(4) TestCaseApi: 文件夹存放测试用例的

三、代码实现

3.1、接口封装代码展示

1).从配置文件中获取session,导入库import configparser,使用read读取配置文件所在的地址,这里我用的是绝对路径,使用get获取配置文件内的具体内容,详情参考代码。

2).pysnooper是一个调试工具,能够将接口的每一步操作都给详细的打印出来,

用法:导入库import pysnooper ,在函数上方@pysnooper.snoop()就可以使用了

3).定义一个函数,输入相关的接口信息,常用的http请求方法有get、post、delete、put等

4).拓展:dumps与loads:https://www.cnblogs.com/lily1989/p/8195505.html

3.2、unittest代码展示

1).首先,新建一个unittest文件,导入unittest库,将刚才的接口文件导入到此文件内:

from Api.Front.common import enumerations。

2).接下来我们新建一个class类,名称可随便定义,不过一般还是见明知意比较好。

3).setUp:主要是进行测试准备工作,每个case前运行,在这里我定义为接口的预期结果,通过断言与实际测试结果做对比。

4).接下来就是编写测试用例了,首先定义一个函数:test_enumertions,因为这个接口参数type有多个值,在这里我用了list列表,通过使用for循环将每个值都给循环执行一遍直至循环完毕

5).assertEqual:python断言方法,在这里通过调用setUp里定义的预期结果与实际结果做对比,实现断言

3.3、生成测试报告代码

1).详情请参考用例中注释,注释将每一步操作都详细的描述出来了

3.4、最后运行结果

 

以上是关于Python+unittest+requests 接口自动化测试框架搭建 完整的框架搭建过程 实战的主要内容,如果未能解决你的问题,请参考以下文章

接口框架 python+unittest+request+HTMLTestRunner

Python+unittest+request断言方法封装

python+unittest+requests实现接口自动化

Python接口测试之对MySQL/unittest框架/Requests 的操作

python+unittest+xlrd+request搭建API测试框架

python3+requests+unittest:接口自动化测试