![在这里插入图片描述](https://img-blog.csdnimg.cn/cfeb1bce21364c75b83894fc9fdb7e10.png#pic_center)
以实用为导向,把Pytest 自动化测试框架,用到极致!
所有内容,以视频方式进行持续输出和优化,
更多,更精彩的内容,请点击视频链接:
视频链接
有喜欢和想要学习自动化测试的朋友,或者正在公司正在抓耳挠腮想要搭建自动化项目的以及单纯提高Python编程技能的,欢迎来了解。这里没有冗余的python代码,只有短小精悍的python编程技巧 和非常有参考价值的案例。以及最佳的设计模式。
不喜勿pen,请尊重劳动人们的辛苦制作,也是浪费大量精力和整合各种技巧和技术模块,给大家一个
现成的、优化过的、实用的和现代化的全栈自动化测试框架以及容器化的自动化解决方案。
一、入门
1-课程介绍
2-pytest入门介绍
3-开发环境搭建
4-工程结构与用例断言介绍
5-编写pass 与fail 自动化测试用例
6-编写多数据结构用例
7-多数据结构与多断言实现
8-自定义异常信息
9-代码异常逻辑处理-忽略异常
10-代码异常处理-捕获异常
11-pytest 三种运行方式详解
12-pytest 开启极简面向对象编程模式-上集
13-pytest 开启极简面向对象编程模式-下集
二、Pytest核心Fixture(夹具)精讲
1-Pytest夹具入门-(作用)
2-Pytest夹具案例详解
3-Pytest夹具执行顺序(夹具范围-夹具优先级-夹具使用规则)
4-Pytest夹具综合案例和使用场景
三、参数化
1-Pytest 参数化介绍和三种方式
2-登陆功能参数化与解决中文乱码
3- Pytest与Faker创造虚假数据
4-面向对象之参数化装饰器和范围控制
5-indirect间接参数化
6-子集参数化与参数化堆叠两种方式
7-pytest参数生成器
四、标签化
1-自定义命令行选项
2-Pytest动态修改夹具范围scope
3-临时目录文件和工厂夹具
4- 标签化管理和运行测试用例
五、Mock数据
1-pytest-mock模拟系统未完成功能
六、插件大全
1-pytest插件大全介绍与用例时间限制
2-用例异常重复测试
3-用例超过指定的错误比例自动停止
4-用例依赖和序号控制用例执行顺序
5-pytest切换测试环境
6-YAML之用例数据驱动
7-用例分布式执行
七、报告(专项)
1-通过修改源码,高度自定义pytest-html(汉化、显示、字段配置等)
2-allure介绍与报告结构
3-allure实际运行演练
4-allure各种标签的应用和场景
5-allure标签之step、title与description
6-allure标签之link详解
7-allure标签之title与description
8-完善allure环境变量信息的展示
9、allure生成趋势图和自定义logo等等
八、使用插件轻松构建自动化用例
1-pytest-selenium插件实现web-UI自动化
2-pytest-selenium插件实现移动端(app)自动化
九、使用线上项目进行UI和接口自动化实战
1-pytest-被测项目介绍
2-自动化项目结构搭建
3- 获取接口用例文档,熟悉接口用例,请求类型,参数类型,返回值等–上集
4- 获取接口用例文档,熟悉接口用例,请求类型,参数类型,返回值等–下集
5- 开发全局共享的Token夹具。
6-开发分类接口夹具,给用例提供功能和接口数据
7-开发分类接口的测试用例,进行业务逻辑断言
8- 引入全局配置模块和引入对应plugins插件(进行插件化开发-减少代码,提高效率,无限扩展)
9-标签与图片上传用例和用例管理
10-开发文章发布用例与数据驱动(关键字)的实现
11-实现后置终结器模式清理自动化用例跑完后的测试的垃圾数据(防止污染正式环境,挡板)
12- 配置项目的HTML报告(标题,被测项目,运行时间,用例数量,错误数量,联系人、详情)
13-配置Allure报告(同上)
14- 报警和报告钉钉通知
15- 邮件通知
16- 获取Allure报告摘要信息作为存档和通知到钉钉群和报告内
17-获取Allure报告错误截图和首页截图存储到阿里云OSS系统,进行统一管理。
18- 出错自动截图,自动上传阿里云oss和添加allure、html 报告内
19-邮件、钉钉发送测试报告
20-开始研发 UI自动化用例(定版UI自动化用例范围,熟悉UI自动化测试用例)
21-封装底层公共类,方法,减轻、去除UI自动化测试的重复代码。
22- 设计PageObject 模式,可以封装单个网页元素,封装多个网页元素。
23- 在PageObject 调用原生API ,实现无限扩展,灵活调用。)开发案例
24- PageObject 实现过程详细解读,麻烦的底层,就是为了极大的简化业务层的使用。
25–PageObject 源码解读–终结
26-插件化开发谁都避不开的登陆、后台首页主要 功能的开发
27-使用数据驱动模式,开发 登陆用例
28、开发文章发布用例
十一、生产环境(把本地开发的自动化代码,部署到集群服务器上跑自动化任务)
1-添加自定义命令行选项(控制运行UI自动化还是接口自动化或同时跑)
2-修改截图功能兼容服务器(容器)版本
3-修改截图功能兼容服务器(容器)版本
4-搭建Gitlab服务器,对自动化任务代码进行版本管理
5-使用pycharm 把本地代码上传到Gitlab服务器
6-构建可以CICD的DockerFIle 脚本
7-研发可以一键运行远程服务器的自动化任务(类似于总统手里拿着的核武器遥控器)
8- 实战演示使用Docker 容器跑UI和接口自动化测试任务
十二、插件进阶与插件开发
1-Pytest插件详细介绍(概念-使用-开发-扩展,比官方doc还要详细没有之一)
2-Pytest核心系统pluggy详解
3-pluggy自定义钩子执行顺序
4-深度讲解hookwrapper包装器
5-pluggy控制钩子执行和插件操作
6-Pytest钩子的分类介绍
7-Pytest钩子的功能和执行顺序
8-Pytest钩子Debug和PDB终端调试
9-Pytest初始化钩子的应用
10-Pytest收集钩子用例过滤和排序
11-Pytest收集钩子-参数化用例应用
12-Pytest运行、报告、断言钩子应用
13-Pytest插件项目环境管理 (通过virtualenv进行多态测试环境管理和切换)
14-Pytest插件之打包环境构建
15-Pytest插件代码编写与打包(第三方插件,可pip 在线安装,离线安装、本地安装)
16-Pytest 插件测试(对开发好的插件,进行全方位测试)-上集
17-Pytest 插件测试(对开发好的插件,进行全方位测试)- 下集
十三、测试工具开发与整个项目优化
1-录制回放-mitmproxy介绍与实现步骤
2-录制回放-掌握mitmproxy的使用
3- 录制回放-封装SQL工具函数
4- 录制回放-SQL工具函数使用讲解
5-录制回放-mitmproxy插件编写
6-录制回放-mitmproxy流量录制实战演练
7-录制回放-流量回放实战演练
8- 读取Swagger文档生成接口用例
9-自动下载谷歌浏览器驱动匹配版本
10-项目Dokcer镜像构建速度优化