从“会写用例”到“能搭框架”:pytest 帮你补齐的三块短板
很多开发者写单测停留在 `unittest` 时代,或者随手几个脚本凑合。转岗测试开发、或想在 CI 流程里落地自动化时,会发现痛点很具体:用例分散、数据重复准备、报错信息看不懂、执行效率低。这门课解决的核心问题,就是把这些散点串联成可维护的工程。它不教你基础语法,而是讲清楚 pytest 的收集规则、断言重构、以及为什么 `fixture` 比 `setUp` 更值得学。适合有一定 Python 基础、接触过简单自动化但想体系化提升的同学。如果你连 `assert` 都被 pytest 重写了还一脸茫然,那正是需要补课的地方。
学习路径建议:先抓核心,再扩展插件
资料包里的目录是按模块拆分的,但建议不要按顺序从头到尾看。前三部分最硬核:**pytest 初体验**里要把命名原则和运行方式搞清楚,否则后面用命令行调用例会晕;**断言与按需运行**是日常最高频的操作,重点理解为什么 pytest 的 `assert` 能自动展示变量值;**fixture 主要功能**是难点也是亮点,必须彻底搞懂作用域、依赖注入和共享机制。这部分啃下来,你已经能独立写出结构清晰的用例。接下来看**参数化与数据驱动**,这是解决“同逻辑不同数据”问题的标准答案,配套练习一定要亲手把 Excel 或字典数据接进用例里。等到这里,再去看**第三方插件**(如并行测试)和**日志覆盖率**,属于锦上添花。如果跳过 fixture 直接看插件,很容易因为底层机制不清而踩坑。
学完能做什么,以及资料怎么配合
这门课不是“看完就懂”,而是“练完会用”。完成配套练习后,你应该能独立做到:搭建一个符合 pytest 规范的测试工程结构;用 `fixture` 管理数据库连接或登录态,避免代码重复;通过 `@pytest.mark.parametrize` 实现接口或功能测试的数据驱动;使用命令行参数灵活跳过、标记或并行执行用例;在项目 CI 中接入 allure 生成可视化报告,定位失败原因。
资料包中的视频只是思路引导,真正的能力缺口在于练习。建议每看完一个章节,立刻在本地新建一个空白项目,跟着视频里的代码手动敲一遍,而不是复制粘贴。特别是 fixture 的作用域实验和参数化的多种写法,不动手写一遍永远记不住。遇到报错不要急着查网络,先看 pytest 自带的 traceback,它已经给出了大部分问题的线索。当你能不依赖教程,自己设计一个包含设置、执行、断言、清理的完整测试流程时,才算真正跨越了这个门槛。
课程目录
1-1 [pytest及测试框架介绍] 1-1 pytest及测试框架介绍 (20:58) 1-2 [pytest及测试框架介绍] 1-2 pytest初体验,框架结构运行方式命名原则 (20:36) 2-1 [pytest的测试管理] 2-1 pytest的断言及按需要运行部分用例 (34:14) 3-1 [pytest-fixture的主要功能] 3-1 pytest-fixture的主要功能 (20:46) 4-1 [pytest的参数化与数据驱动框架实现] 4-1 pytest的参数化与数据驱动框架实现 (27:40) 5-1 [pytest丰富的第三方插件] 5-1 pytest丰富的第三方插件 (25:01) 5-2 [pytest丰富的第三方插件] 5-2 pytest的第三方插件-并行测试 (19:34) 6-1 [pytest下的日志管理和代码覆盖率] 6-1 pytest下的日志管理和代码覆盖率 (25:29) 7-1 [allure自动化测试框架使用] 7-1 allure-pytest报告的安装与生成 (28:21) 7-2 [allure自动化测试框架使用] 7-2 allure使用feature,story,step (33:26) 7-3 [allure自动化测试框架使用] 7-3 allure中使用severity,title等定制 (20:51) 8-1 [pytest和allure框架在自动化测试中的应用] 8-1 pytest和allure框架在单元测试中的应用 (28:15) 8-2 [pytest和allure框架在自动化测试中的应用] 8-2 pytest和allure在web自动化测试中的应用 (11:41)





