第 11 课:测试思维与质量保障
AI 写代码更快了,但你的工作是证明它能用
AI 让代码生成变得更快,但"代码生成"和"产品可用"之间有一段距离。这段距离就是测试。
测试不是开发者的专利。产品经理不需要写测试代码,但需要具备测试思维——能系统地检查产品在各种情况下是否按预期工作。
测试金字塔:单元测试、集成测试、E2E 测试
测试分为三层,从底层到顶层:
单元测试——测试单个函数或组件。比如"这个计算价格的函数,输入 100 和 0.1,输出应该是 90"。由开发者编写和执行。
集成测试——测试多个模块的协作。比如"用户提交订单后,库存是否正确减少,支付是否正确发起"。由开发者编写,但产品经理需要提供业务规则。
E2E 测试(端到端测试)——测试完整的用户流程。比如"用户从打开应用、搜索商品、加入购物车、下单支付、收到确认——整个链路是否通畅"。产品经理重点关注这一层。
金字塔的含义:底层测试数量多、速度快、成本低;顶层测试数量少、速度慢、成本高。不要倒过来——只做 E2E 测试而不做单元测试,就像只用望远镜检查建筑而不检查砖块。
产品经理关注的测试场景
产品经理不需要关注所有测试,但以下场景是必须覆盖的:
1. 核心流程的完整路径
- 用户完成主要任务的每一步是否通畅?
- 每一步的输入和输出是否符合预期?
2. 异常场景
- 网络断开时用户看到什么?
- 输入非法数据时系统怎么反应?
- 并发操作时数据是否一致?
3. 权限边界
- 未登录用户能访问什么?
- 不同角色看到的内容有什么区别?
- 越权操作是否被拦截?
4. 数据边界
- 列表为空时显示什么?
- 数据量很大时性能如何?
- 超长文本、特殊字符怎么处理?
Bug 优先级判断
不是所有 Bug 都需要立刻修复。判断优先级的标准:
| 优先级 | 标准 | 例子 |
|---|---|---|
| P0 紧急 | 影响核心功能,用户无法完成主要任务 | 支付失败、登录不了 |
| P1 高 | 影响重要功能,有明显的替代路径 | 搜索结果不准确,但可以用筛选替代 |
| P2 中 | 影响体验,不影响功能使用 | 页面加载慢、排版错位 |
| P3 低 | 小问题,不影响使用 | 按钮颜色和设计稿不一致 |
P0 必须立刻修复,P1 在当前版本修复,P2 和 P3 可以排到后续版本。
一个常见的错误:把所有 Bug 都标记为高优先级。当所有都是高优先级时,就没有高优先级了。
AI 时代的测试新挑战
AI 生成的代码有一个特殊风险:它看起来是对的,但可能在边界情况下出错。 AI 擅长处理常见场景,但对罕见场景和特殊条件的处理经常有盲区。
因此,AI 生成的代码需要更仔细地测试边界条件——不是测试正常流程(AI 通常做得不错),而是测试异常和极端情况(AI 容易遗漏的地方)。
关键概念
- 测试金字塔:单元测试(多快省)→ 集成测试 → E2E 测试(少慢贵)
- 产品经理重点关注意义场景:核心流程、异常场景、权限边界、数据边界
- Bug 优先级:P0 紧急→P1 高→P2 中→P3 低,不能全是高优先级
- AI 代码的测试重点:边界条件和异常场景
课后练习
- 为你的产品的一个核心功能列出测试场景清单——覆盖正常流程、异常场景、权限边界、数据边界
- 区分哪些测试场景是开发做的,哪些是产品经理需要验证的