QA 是什么
QA vs QC、测试思维、V&V。
30 分钟
QA 是什么
质量保证(QA) 关注「过程是否可靠」,质量控制(QC) 关注「产物是否合格」。测试是 QC 的主要手段,但 QA 还包含需求评审、流程改进与发布门禁。对照 /roadmaps/qa 路线图,本 track 从方法论到自动化、性能与安全,系统覆盖 QA 技能树。
学习目标
- 区分 QA、QC、测试三者的职责边界
- 理解 V&V(验证与确认)在软件生命周期中的位置
- 建立「左移测试」与风险驱动测试的基本思维
- 明确 qa-essentials 与 testing-essentials 的分工
核心概念
QA vs QC vs 测试
| 角色 | 关注点 | 典型活动 |
|---|---|---|
| QA | 过程与标准 | 流程审计、度量、培训 |
| QC | 产物质量 | 执行用例、报缺陷 |
| 测试工程师 | 技术验证 | 设计用例、自动化、专项测试 |
验证(Verification):「是否按规格实现?」——对照设计文档与代码。
确认(Validation):「是否满足用户真实需求?」——UAT、业务验收。
测试思维
- 风险驱动:登录、支付、权限优先于次要 UI 细节
- 左移:需求阶段发现歧义,比上线后修 bug 便宜一个数量级
- 可重复:同一用例多次执行结果一致,不依赖「手感」
与路线图节点
对应 /roadmaps/qa 起点:Testing Fundamentals → 方法论 → 手工 → 自动化。CodeRoadMap 的 backend 与 platform 在 CI 中跑 mvn verify 与 npm test,是开发侧 QC 的自动化体现。
与 testing-essentials/Spring 对照
| qa-essentials | testing-essentials / Spring |
|---|---|
| QA 流程、角色、V&V | 测试金字塔、JUnit 写代码 |
| 手工用例、UAT | MockMvc、Mockito 单元测试 |
| 测试管理与发布门禁 | test-ci、gha-java |
testing-essentials 教开发者「怎么写测试」;qa-essentials 教测试视角「测什么、怎么组织、怎么交付信心」。两者互补:Spring Boot 项目里 Service 单测见 sb-test。
练习
- 浏览 /roadmaps/qa,标出「Testing Fundamentals」节点
- 列举 CodeRoadMap 上 3 个「验证」与 3 个「确认」的例子
- 说明 QA 与 QC 在你当前团队(或假想项目)中分别由谁负责