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性能测试

请添加图片描述

九、总结(尾部小惊喜)

只要你肯拼搏,就有机会改变命运。永远不要放弃自己的梦想,因为成功不是偶然,而是不断努力和坚持的结果。相信自己,勇往直前,未来将铸就辉煌!

有一份执着,就会有一份收获;有一份信念,就会有一份力量。所以,无论生活多么艰辛,工作多么繁重,都要坚持自己的梦想,勇往直前,最终实现自己的目标!

成功不是终点,而是一个不断追求的过程。每一次努力都会让自己更加强大,只要你愿意拼搏,就能创造属于自己的辉煌人生。

猜你喜欢

转载自blog.csdn.net/x2waiwai/article/details/129992310