这是我见过最牛逼的接口自动化测试框架没有之一:基于python+requests+pytest+allure实现
2021/7/6 20:44:21
本文主要是介绍这是我见过最牛逼的接口自动化测试框架没有之一:基于python+requests+pytest+allure实现,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
今年是以往10年中最坏的一年,是未来10年中最好的一年,同时也是自动化测试爆发的一年,自动化从18年开始萌芽之后自此功能测试打遍天下的日子已经一去不复返了。在自动化的领域里面,接口自动化当之无愧的是投入和产出比最高的一种,也是企业首先需要实施落地的一种自动化。
众所周知,目前市面上大部分的企业实施接口自动化最常用的有两种方式:
1.基于工具类的接口自动化,如:
Postman+Newman+Jenkins+Git/svn
Jmeter+Ant+Jenkins+Git/svn
2.基于代码类的接口自动化,如:
Python+Requests+Pytest+Allure报告定制
而接口自动化离不开接口自动化框架的搭建,在大部分测试人员眼中只要沾上“框架”,就感觉非常神秘,非常遥远。主要是因为大部分的测试人员代码能力比较薄弱;废话不多说:看效果:
一、接口自动化测试框架需要解决的问题
1.接口的基本信息使用Yaml来保存,Yaml比Excel更方面,格式更清晰。
2.不同的传参方式(get,post,put,delete),以及不同的参数传递(传键值对,传Json数据,传文件)等。
3.接口关联如何处理。(即上一个接口的返回值作为下一个接口的参数)
4.断言(判断预期结果和实际结果是否一致)
5.数据驱动(本框架使用CSV文件实现)
6.日志监控,异常处理以及基础路径的配置。(框架的键全性)
7.框架的扩展性,这个至关重要,比如:有些接口参数必须加随机数的情况。(本框架使用的热加载的方式。)
二、接口自动化测试框架目录结构
(1)Common文件夹是公共封装文件:如:日志模块,分析Yaml模块,请求封装模块,Yaml操作模块等。
(2)Data文件夹用于存放数据驱动的CSV文件;
(3)Logs文件夹用于存放日志文件;
(4)Reports用于存放报告文件(基于Allure生产的定制化的报告)
(5)Temp用于存放临时文件
(6)TestCases用于存放测试用例文件
(7)all.py总执行文件,config.yaml配置文件…
三、日志监控文件的信息
日志监控是每个框架必备的,用于监控每个接口的数据以及返回接口以及报错信息。
这个日志有点详细啊,包括了接口名称,请求方式,请求路径,请求头,请求参数,文件上传,预期结果,实际结果以及接口是否请求成功和失败。
四、搭建具有企业Logo的定制化报告。
报告还可以定制的吗?第一次听说,哈哈,除了Logo定制外,还搭建了,项目名称定制,模块定制,接口名称定制,用例标题定制…N中定制。如下图:
OK,OK,够了,够了,请允许我在评论区打三个字:牛逼!牛逼!牛逼!
OK,OK,够了,够了,请允许我在评论区打三个字:牛逼!牛逼!牛逼!
OK,OK,够了,够了,请允许我在评论区打三个字:牛逼!牛逼!牛逼!
有时候回头想想,努力的撸代码还不如下面的这本秘籍,送给各位CSDN的狼友们!
感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,如果下面这些资料你用得到的话可以直接拿走:
① 自学必备的完整项目 (包括源码和环境,可以自己安装在本地使用)
② 测试计划模板,测试用例设计模块,功能测试报告模块等(涵盖了测试工作中所有模块)
③ 软件测试经典面试题(笔者根据自己10多年测试经验整理)
④ selenium+Python(Java)自动化测试实战.pdf,(包括了Python以及Java自动化的所有知识点)
⑤ 软件测试(自动化测试)学习路线图(从此自学有了方向不在迷茫)
在我的QQ技术交流群里整理了我这10几年软件测试生涯整理的一些技术资料,包括:电子书,简历模块,各种工作模板,面试宝典,自学项目等。如果在学习或工作中遇到问题,群里也会有大神帮忙解答,群号994590418 备注888
这篇关于这是我见过最牛逼的接口自动化测试框架没有之一:基于python+requests+pytest+allure实现的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-12Python编程基础指南
- 2024-11-12Python基础编程教程
- 2024-11-08Python编程基础与实践示例
- 2024-11-07Python编程基础指南
- 2024-11-06Python编程基础入门指南
- 2024-11-06怎么使用python 计算两个GPS的距离功能-icode9专业技术文章分享
- 2024-11-06Python 基础编程入门教程
- 2024-11-05Python编程基础:变量与类型
- 2024-11-05Python编程基础:变量与类型
- 2024-11-04Python编程基础:变量与类型