2023年了接口自动化测试框架还不会搭建?看看8年测试老鸟如何做......
目录:导读
前言
分层设计
API:存放单个接口
data:存放Excel,表格中写好测试用例,或者使用yaml
cases:存放测试用例文件
conf:存放setting.py配置文件,配置各种账号密码等配置数据
report:存放测试报告
logs:存放日志
tools:存放各种工具类,对数据进行处理
main.py:框架执行入口
start.py:如果需要一次性执行多个Excel_sheet中的测试用例,那么先需要进行数据隔离,可以在这个文件中进行封装执行,那么不需要前面那一步了
Python自动化测试:https://www.bilibili.com/video/BV16G411x76E/
参数替换->发送请求->响应结果处理->接口断言->响应参数提取设置成属性->数据库断言
为了让每一步都顺利进行,需要封装很多个方法来实现
详细思路与步骤
1、API接口
写框架之后,首先要跑通单个接口,这个可以先写简单的测试用例脚本跑通接口
2、EXCEL测试用例
提取每个接口的url,method,data等数据,在excel表格中填写每个接口的相关数据,在URL或者data中有需要替换的参数时,可以用符号标记出来,(例如#key#),方便过后用正侧表达式提取和替换参数
3、提取封装excel数据
封装一个类,专门用于提取excel数据,让方法返回数据为cases_list格式,组合标题case_title与用例数据case_data,常用方法便利表格数据后dict(zip(case_title,casa_data))(比如返回格式:[",…])
4、替换参数
封装一个类,用于替换参数,很多接口,需要替换data里面的参数,甚至url地址也会需要替换参数,比如第二步中,标题需要替换的参数#key#;
1)先写一个方法去掉excel表格提取数据中的空格和换行符,可以用data.replace();
2)写一个方法,专用用于提取需要替换的key,返回key_list;
3)写一个方法,对于不用来源的key进行属性设置(全局变量设置,此时需要单独在一个py文件中写一个属性的类型);
4)写一个方法,专门用来替换key的值(用上一步设置的属性,或者用上一个接口返回的值设置成属性,或者前置sql查询的值设置属性),总之这一步把所有标记的#key#,替换成接口需要的正确的数据,最终返回完整的替换后的excel数据
5、发送请求
写一个request类,用于接口请求的数据,比如,接口数据类型是否一致。
1)接口地址需要替换参数的需要提取处理
2)接口数据不同,需要区别处理的,比如不同的content_type不一样
6、响应数据处理
封装一个类,专门用于响应结果的处理,比如1、各种接口类型返回不一致的问题,可以单独自行返回想要的结果类型,2、进行接口断,3、数据库断言
7、接口返回值提取
封装一个类,专门用于接口返回值的提取,在excel中添加一列extract_dada,提取的数据直接设置成属性
8、接口响应断言
封装一个类,用于响应接口断言,在excel表格中,添加一列expected_data,通过期望结果与实际接口返回值的对比
9、数据库断言
封装一个类,用于数据库断言,在excel表格中,添加一列assert_db,通过写出期望结果与数据库SQL查询的实际结果做对比
10、连接数据库
封装一个类,用于连接数据库,关闭数据库,以及sql数据的返回,对于接口值的作用不同,有时候需要返回一个值,有时候需要返回dict类型,可以区别做处理
11、路径处理
封装一个类,专门用于路径的处理
12、测试报告
封装一个类,可以对测试报告进行数据,比如只展示当前的测试报告,历史的报告存放在history目录中
13、测试执行
各种方法封装好之后,可以在main.py中统一收集测试用例,执行测试用例,以及生成测试报告,发送测试报告邮件等,该main.py文件为该矿界的执行入口
下面是我整理的2023年最全的软件测试工程师学习知识架构体系图 |
一、Python编程入门到精通
二、接口自动化项目实战
三、Web自动化项目实战
四、App自动化项目实战
五、一线大厂简历
六、测试开发DevOps体系
七、常用自动化测试工具
八、JMeter性能测试
九、总结(尾部小惊喜)
只要你肯拼搏,就有机会改变命运。永远不要放弃自己的梦想,因为成功不是偶然,而是不断努力和坚持的结果。相信自己,勇往直前,未来将铸就辉煌!
有一份执着,就会有一份收获;有一份信念,就会有一份力量。所以,无论生活多么艰辛,工作多么繁重,都要坚持自己的梦想,勇往直前,最终实现自己的目标!
成功不是终点,而是一个不断追求的过程。每一次努力都会让自己更加强大,只要你愿意拼搏,就能创造属于自己的辉煌人生。
相关文章
- 2022超级好用的接口自动化测试框架:基于python+requests+pytest+allure实现
- 自动化测试平台(二):开发用户认证接口
- 想学接口自动化测试,不会搭建框架怎么行?!
- 接口自动化测试需要验证数据库吗?
- python接口自动化 —— 什么是接口测试、为什么要做接口测试(详解)
- Postman接口测试 —— 使用postman运行接口
- 接口自动化测试—python+requests接口自动化测试框架实例详解教程
- 【2023最全教程】Python接口测试实战之搭建自动化测试框架(建议收藏)
- 一文1000字从0到1用Postman做接口自动化测试(建议收藏)
- 【接口测试】从0不到1的心路历程
- 接口自动化测试的价值,看完可涨薪3k...
- 自动化测试平台(二):开发用户认证接口
- 2022全网最全的Python接口测试实战之搭建自动化测试框架
- Python接口测试实战之unittest测试框架【7000字超细教程】
- 2022年接口测试高频面试题及答案
- 2021年软件测试工具大全(自动化、接口、性能、安全、测试管理)
- 一个完整的jmeter APP登录接口测试实例
- 字节女测试工程师万字总结的软件测试入门技巧
- 测试大姥如何用Python3+requests+unittest实现接口自动化测试实战
- 接口自动化测试之Fiddler使用教程
- 接口测试中,数据驱动时,参数各类型,空或None的处理
- Python nose单元测试框架结合requests库进行web接口测试
- 全网最详细,python接口自动化测试JsonPath接口关联数据验证(实战)
- 【python/request/HTMLTestRunner/unittest】接口自动化测试框架
- 接口自动化测试框架搭建【附详细搭建视频】
- 利用JaCoCo统计接口测试中代码覆盖率
- 开源接口测试框架之公司应用篇