基于Pytest与Postman的数据自动采集接口自动化测试实践

发表于:2020-2-17 10:17

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:kayie    来源:51Testing软件测试网原创

  一、前言
  本文跟大家介绍的是基于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,设置抓包的存储路径,比如一个功能流程就可以单独存一个集合,最后设置过滤地址为本系统,以免抓到与系统无关的接口 。

      ......
查看更多精彩内容,请点击下载:
http://www.51testing.com/html/62/n-4464162.html

版权声明:本文出自《51测试天地》第五十六期。51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号