软件测试学习路线¶
新手导读
这份路线用于回答"先学什么、后学什么、学到什么程度可以进入下一阶段"。如果你是零基础或转岗学习,建议按顺序推进;如果已经有经验,可以直接跳到薄弱阶段补齐。
一、适合人群¶
| 人群 | 建议用法 |
|---|---|
| 零基础入门 | 从第 1 阶段测试入门开始,先建立测试思维 |
| 手工测试转自动化 | 重点补第 4 阶段:Python、接口自动化、Selenium、Playwright |
| 接口测试提升 | 串联第 2-3 阶段:Postman、接口测试方法论、Python 接口自动化 |
| 测试进阶 | 补第 3 阶段:性能、安全、Docker、Jenkins、CI/CD 工程化能力 |
二、五阶段学习路径¶
学习时不要只看教程。每个阶段都应该完成练习任务,并能说清楚"为什么这样测、怎么定位问题、如何输出结果"。
三、第 1 阶段:测试入门¶
建议学时:2-3 周(每周投入 8-10 小时)
学习目标¶
- 理解软件测试的目的、流程和常见分类。
- 能独立阅读需求并拆分测试点。
- 能编写基础测试用例和缺陷报告。
必学教程¶
练习任务¶
- 选择一个登录页面,拆分功能测试点、异常测试点和安全测试点。
- 按等价类、边界值和场景法设计不少于 20 条测试用例。(这三种是常用的用例设计方法,会在教程中详细讲解)
- 模拟 3 个缺陷,并写出缺陷标题、复现步骤、实际结果和期望结果。
达成标准¶
- 能说明测试计划、测试用例、缺陷、测试报告之间的关系。
- 能把一个简单需求拆成可执行的测试点。
阶段测验¶
完成教程后,建议做 Python 基础测验 检验学习效果。
四、第 2 阶段:工具实战¶
建议学时:3-4 周(每周投入 10-12 小时)
学习目标¶
- 能使用 SQL 查询和校验业务数据。
- 能在 Linux 服务器上查看日志、进程、端口和磁盘。
- 能使用 Git 完成日常协作。
- 能用 Docker 启动基础测试环境。
- 能使用 Postman 调试接口。
- 能使用 Fiddler 抓包分析。
必学教程¶
练习任务¶
- 写出用户表、订单表、商品表的常见查询 SQL。
- 在 Linux 中定位一个端口占用问题。
- 用 Git 新建分支、提交代码、解决一次模拟冲突。
- 用 Docker 启动一个数据库或接口服务。
- 用 Postman 调试登录接口并设置 Token。
- 用 Fiddler 抓取登录请求并分析参数。
达成标准¶
- 能独立完成测试环境的基础排查。
- 能通过数据库和日志辅助定位问题。
阶段测验¶
完成教程后,建议做 SQL 基础测验 检验学习效果。
五、第 3 阶段:专项测试¶
建议学时:2-3 周(每周投入 10-12 小时)
学习目标¶
- 理解 HTTP 请求、响应、状态码、Header、Cookie、Token。
- 能根据接口文档设计正向、异常、安全和数据一致性用例。
- 能完成基础性能测试脚本设计和结果分析。
- 能识别常见 Web 安全风险。
必学教程¶
练习任务¶
- 为登录、商品查询、加入购物车、创建订单设计接口用例。
- 对登录或查询接口做一次简单压测,并记录 TPS、响应时间和错误率。
- 检查接口是否存在越权、弱校验、敏感信息泄露。
- 用 Redis 或 MongoDB 校验缓存和业务数据。
达成标准¶
- 能从接口文档独立设计接口测试方案。
- 能从性能、安全、数据一致性角度补充测试风险。
六、第 4 阶段:自动化测试¶
建议学时:4-6 周(每周投入 10-12 小时)
学习目标¶
- 能判断哪些场景适合自动化,哪些不适合。
- 能使用 Python + Requests + Pytest 做接口自动化。
- 能使用 Selenium 或 Playwright 完成 Web 核心流程自动化。
- 能理解 Page Object、等待机制、失败截图和报告。
- 能了解 Appium 移动端自动化的环境和定位方式。
必学教程¶
练习任务¶
- 将核心接口改写成 Pytest 自动化用例。
- 自动化登录、搜索、下单前置流程。
- 为自动化脚本增加显式等待和失败截图。
- 用 Page Object 重构一个页面流程。
- 对比 Selenium 和 Playwright 在等待、定位、网络拦截上的差异。
达成标准¶
- 能写出稳定的核心流程自动化脚本。
- 能解释自动化维护成本,并说明如何降低误报。
七、第 5 阶段:项目与面试¶
建议学时:3-4 周(每周投入 10-12 小时)
学习目标¶
- 能把前面阶段的知识串成完整工作流。
- 能输出测试计划、测试用例、缺陷报告、接口测试报告、自动化测试报告。
- 能进行面试项目表达。
推荐项目¶
- 电商系统测试实战 - 掌握完整测试流程
- 接口自动化项目实战 - 串联 Postman、Requests、Pytest、Allure
- Web 自动化项目实战 - 训练页面对象、等待、截图、报告和 CI 运行
- 性能测试项目实战 - 训练指标、场景、压测执行和结果分析
- CI/CD 自动化回归实战 - 把自动化测试接入流水线
推荐教程¶
- Jenkins CI/CD - 企业内网 CI/CD 事实标准
- GitHub Actions - GitHub 内置 CI/CD,开源项目首选
- GitLab CI/CD - GitLab 内置 CI/CD,私有部署首选
作品集产出¶
每个项目完成后,建议沉淀以下内容:
| 产出物 | 说明 |
|---|---|
| 测试范围 | 明确测什么、不测什么 |
| 测试点清单 | 按模块拆分功能、异常、权限、数据、兼容性风险 |
| 测试用例 | 包含前置条件、步骤、预期结果和优先级 |
| 接口用例 | 包含参数组合、断言、鉴权、幂等和异常场景 |
| 缺陷示例 | 记录典型缺陷和定位思路 |
| 测试报告 | 汇总执行结果、风险、遗留问题和上线建议 |
达成标准¶
- 能完成一个完整的项目实战。
- 能输出可展示的作品集材料。
- 能用项目经验进行面试表达。
八、项目实战入口¶
学完基础教程后,建议进入 项目实战:
- 先做 电商系统测试实战,掌握完整测试流程。
- 再做 接口自动化项目实战,把 Postman、Requests、Pytest、Allure 串起来。
- 然后做 Web 自动化项目实战,训练页面对象、等待、截图、报告和 CI 运行。
- 继续做 性能测试项目实战,训练指标、场景、压测执行和结果分析。
- 最后做 CI/CD 自动化回归实战,把自动化测试接入流水线形成持续反馈。
项目实战的目标不是背知识点,而是把需求分析、用例设计、接口验证、数据库校验、缺陷记录和报告输出串成完整工作流。
九、学习建议¶
学习顺序¶
- 先看 学习中心,了解五阶段学习路径。
- 按阶段顺序学习,不要跳过前面阶段直接学自动化。
- 每学完一个教程,在学习中心勾选"已学习"。
- 完成阶段测验,检验学习效果。
- 进入项目实战,把知识串联起来。
学习方法¶
- 不要只看教程,要动手练习。
- 每个阶段都要完成练习任务。
- 学完后要能说清楚"为什么这样测"。
- 定期复习,巩固知识。
时间安排¶
- 每周投入 8-12 小时。
- 按五阶段顺序,预计 14-20 周完成全部学习。
- 可以根据自己的基础调整进度。
十、常见问题¶
Q: 我是零基础,应该从哪里开始?¶
从第 1 阶段「测试入门」开始,先看 软件测试理论基础,建立测试思维。
Q: 学完一个阶段后怎么判断是否可以进入下一阶段?¶
完成该阶段的所有必学教程,并通过阶段测验(80 分以上)。可以使用 阶段学习检查清单 进行自查。
Q: 我可以直接跳到自动化测试吗?¶
不建议。自动化测试需要前面阶段的基础(测试理论、SQL、Linux、接口测试)。如果直接跳到自动化,很容易变成"脚本能跑,但不知道测了什么"。
Q: 学完后能找到工作吗?¶
学习只是基础,还需要通过项目实战积累经验,并能用项目经验进行面试表达。建议完成第 5 阶段的项目实战和面试准备。