基于Pytest与Postman的数据自动采集接口自动化测试实践
一、前言本文跟大家介绍的是基于python测试框架pytest 与postman数据自动采集的接口自动化测试实践方案,首先了解下为什么是基于pytest框架而不是使用unitest?网上的对比资料很多,概括起来就是pytest 相较于 unittest 代码更加的简洁和灵活,最为跳跃的一点就是 fixture 机制,并且pytest有很多的第三方插件可以扩展和继承,大家可以深入去查一查。
第二个了解的是为什么要做数据自动采集,做数据驱动很多教程推荐的是将数据写在excel中,然后通过程序去读取。但我更推荐的是通过软件自动采集所需数据,这样可以大大节省手动在excel录入数据的时间。推荐使用postman采集数据,它是一款做开发人手必备的接口调试工具,几乎能发送所有类型的HTPP请求,在打开代理模式以后能够自动抓取pc端浏览器或者APP端请求的接口数据,存储并导出后为json格式的数据源,简单方便。
二、自动化框架流程
整个代码框架除了数据来源从postman采集,其他所有封装的公共库以及具体的测试用例均使用代码编辑器如pycharm编写python代码,其中需要用到的pytest、requests、allure等库可以直接使用pip命令安装。从数据采集到完成自动化测试并输出测试报告的流程如下图:
1)编写公共库:如果某个函数需要被多次引用,那么就可以封装成公共函数,这些封装的函数主要有:断言、全局常量、log日志、发送请求、用户session、加密等。跟业务无关,可以先封装好。
2)编写配置文件:配置文件内容如环境参数、文件存储路径、版本号,以及配置文件的读写封装等,也是编写测试用例之前必须封装好的内容。
数据自动采集:如下图所示,打开代理模式,设置代理端口如:5555,设置抓包的存储路径,比如一个功能流程就可以单独存一个集合,最后设置过滤地址为本系统,以免抓到与系统无关的接口 。
页:
[1]