Improve Software Testing — 11 Practices
本页目录· 4 条
11 个改进方向
- Plan testing and QA:建立 test policy、quality management plan、test strategy、test plan 与可维护 test cases。
- Test-oriented development:使用 TDD、pair programming 等,让验证影响设计与编码。
- Shift left:尽早审查需求、频繁小批量测试、持续反馈并优先预防。
- Formal technical reviews:通过 review、walkthrough、inspection 发现逻辑、设计和标准偏差。
- Suitable QA environment:明确角色、尊重测试人员、提供业务培训并鼓励沟通。
- User acceptance testing:让真实领域用户参与,覆盖 alpha/beta、contract、regulatory、operational acceptance。
- Optimize automation:自动化 regression、smoke、cross-browser/device、load 与 performance,并嵌入 CI/CD。
- Exploratory / ad hoc testing:寻找脚本未覆盖的未知风险和边界。
- Code quality measurements:关注复杂度、重复、可维护性与结构风险,不只看 defect count。
- Effective bug reporting:可复现步骤、清晰上下文、expected/actual、单一问题、截图与简洁 summary。
- Test management tool:集中需求、测试用例、执行、缺陷、KPI、报告与团队共享。
文档层次
| Artifact | 回答的问题 |
|---|---|
| Test policy | 组织为何测试、采用什么原则? |
| Quality management plan | 项目要达到什么质量、由谁负责、如何报告? |
| Test strategy | 产品风险、范围、方法、环境、指标和 gate 是什么? |
| Test plan | 本次版本具体测什么、何时、由谁、通过条件是什么? |
| Test case | 输入、前置条件、步骤、预期与实际结果是什么? |
自动化边界
自动化节省时间、减少重复错误并扩大覆盖,但不能替代:
- 用户对“是否满足真实需要”的判断;
- exploratory testing 对未知模式的发现;
- 对可用性、伦理和社会影响的专业分析;
- 对错误结果的人工解释和风险决策。
IE Project 最小方案
- 选出 3 条最高风险 acceptance criteria。
- 为每条写 test case 与 pass/fail 标准。
- 将至少 1 条纳入自动化 regression。
- 安排一次需求 walkthrough 和一次用户验收。
- 约定 defect severity、priority、owner 与关闭证据。
- 在 retrospective 中回顾 escaped defects 与改进动作。