python接口自动化系列(01):自动化测试框架设计
本系列汇总,请查看这里:https://www.cnblogs.com/uncleyong/p/18033074
先看下最终效果(gif)
报告总览
前言
之前分享了java自动化(详见:https://www.cnblogs.com/uncleyong/p/15867903.html),
部分小伙伴建议分享一个python版本,
安排!!!
当然,通过测试招聘要求大家也可以发现,目前标配要求是一个高级语言,一个脚本语言,
所以建议java和python都要会,而通过自动化是熟悉代码的最佳方式之一。
设计原则、实现思路
参考:https://www.cnblogs.com/uncleyong/p/17883399.html
技术栈
python:框架基于python语言实现
pytest:开源测试框架
requests:提供了方便易用的HTTP请求功能
jsonpath:解析json数据
pyyaml:操作yaml
pymysql:操作mysql
allure:测试报告
logging:记录日志,是python内置模块,不需要额外安装
如果对pytest还不熟的,务必先学一下,https://www.cnblogs.com/uncleyong/p/17982846
目录结构规划
│ conftest.py 全局fixture、hook函数 │ main.py 主运行文件 │ pytest.ini pytest配置文件 │ ├─case 用例目录 │ ├─conf 项目配置目录 │ ├─data 测试数据目录,比如yaml文件 │ ├─log 日志文件目录 │ ├─utils 工具目录 │ └─venv 虚拟环境(创建项目自动生成的)
这里省略了README.md,建议大家加上。
补充:
case下可以创建不同功能模块的目录,目录中放py文件(比如:test_user_case.py,test_product_case.py),
然后data下也创建对应py文件的测试数据(比如:case_user.yaml,case_product.yaml),py文件中导入对应数据文件路径读取即可。
__EOF__
本文作者:持之以恒(韧)
关于博主:擅长性能、全链路、自动化、企业级自动化持续集成(DevTestOps)、测开等
面试必备:项目实战(性能、自动化)、简历笔试,https://www.cnblogs.com/uncleyong/p/15777706.html
测试提升:从测试小白到高级测试修炼之路,https://www.cnblogs.com/uncleyong/p/10530261.html
欢迎分享:如果您觉得文章对您有帮助,欢迎转载、分享,也可以点击文章右下角【推荐】一下!
关于博主:擅长性能、全链路、自动化、企业级自动化持续集成(DevTestOps)、测开等
面试必备:项目实战(性能、自动化)、简历笔试,https://www.cnblogs.com/uncleyong/p/15777706.html
测试提升:从测试小白到高级测试修炼之路,https://www.cnblogs.com/uncleyong/p/10530261.html
欢迎分享:如果您觉得文章对您有帮助,欢迎转载、分享,也可以点击文章右下角【推荐】一下!