框架的意义:分层可以避免代码的冗余,增强可读性,可维护性,可扩展性。
框架的特点:
1.保持了测试数据与代码的分离,例如,如果测试数据需要更换,则只需要改excel的测试数据,和配置文件的数据即可。
2.数据驱动(ddt),很好的解决了在同一个场景下不同的测试数据来驱动测试,大量减少了代码冗余, 提高了可维护性。
3.结构分层,a.基础数据层(整个框架的支撑,测试用例的设计)
b.用例层(unnitest收集测试用例,执行,产出报表)
c.逻辑层 (数据库读取,日志输出等为用例层服务)
好处:
1.测试用例放到excel管理,手工测试用例与自动化用例完美结合,避免重复性工作
2.配置灵活,可以根据需要快速的切换测试环境还是线上环境
3.常用功能封装,逻辑清晰,易于维护(接口请求封装,数据库交互,doExcel数据读取,日志类封装,常量路径的封装)
4.统一执行入口,管理测试用例集
5.持续集成,定时构建,快速反馈
使用到的技术/框架:
1.语言 python
2.框架 unnitest pytest
3.接口调用 requests
4.数据驱动 ddt
5.数据管理 openpyxl
6.数据库交互 pymysql
7.数据格式的转换 json
8.日志处理 logging
9.持续集成 Jenkins