Skip to content

测试如何参与需求评审

一、软件测试流程规范

整个项目的规范,涉及到多方,参与项目的产品经理、开发工程师、测试工程师、运维工程师等均需了解并遵循。

1.1 角色与职责

  • 测试负责人:负责制定测试计划、分配测试任务、跟踪测试进度、组织测试评审、输出测试报告。
  • 测试工程师:参与需求/设计评审,编写测试用例,执行测试,提交并跟踪缺陷,输出测试结果。
  • 开发工程师:修复测试工程师提交的缺陷,参与缺陷复盘,配合进行联调测试。
  • 产品经理:澄清业务需求,确认缺陷是否属于需求问题,参与测试验收。

1.2 软件测试流程

软件测试贯穿于整个软件开发生命周期:

需求评审 → 测试计划 → 测试设计 → 测试执行 → 发布评审 → 版本上线 / 回归测试 → 线上验证 → 测试复盘

1.3 需求评审核心

如上整个阶段,需求评审的核心是代表一个用户代表、质量守门员和风险预警员的角色。

  • 核心价值
    • 前置缺陷发现:在编码开始前发现需求缺陷,修复成本最低。
    • 统一理解:确保产品、开发、测试三方对需求的理解一致,减少后续沟通摩擦。
    • 测试早期介入:为后续编写测试计划、测试用例和测试策略奠定坚实基础。
    • 识别测试重点与风险:提前识别技术难点、依赖和潜在的不测试点。

二、准备工作:测试评审需求之前

一般在需求评审之前,产品经理会把需求文档相关的内容下发给整个项目团队,作为测试负责人一定要充分的准备是有效参与评审的基础。切忌后续"裸奔"参会。

2.1 提前获取并阅读需求文档

  • 获取最新版本的需求文档(如PRD、用户故事等)。
  • 通读全文,对项目背景、业务目标、功能范围有一个整体了解。

2.2 理解业务与用户

  • 思考需求的商业价值是什么?解决了用户的什么核心痛点?
  • 如果可能,查看相关的市场分析、用户调研报告或竞品分析。

2.3 初步分析,记录问题与疑问

  • 在阅读过程中,用笔或工具记录下所有不理解、有歧义、觉得矛盾或不完整的地方。
  • 初步构思测试思路:这个功能我未来可以从哪些方面测试?需要什么样的测试环境?测试重点在哪里?

2.4 准备评审检查清单

根据历史经验,准备一个个性化的检查清单,确保评审时不会遗漏关键点。常见检查项包括:

  • 完整性:需求是否覆盖了所有用户场景?异常流程是否被定义?
  • 明确性:术语是否准确定义?规则和逻辑是否清晰无歧义?
  • 一致性:新需求与旧有功能是否存在冲突?UI/交互描述是否与设计规范一致?
  • 可测试性:需求是否可以被验证?是否有明确的成功/失败标准?
  • 技术可行性:是否存在已知的技术挑战或性能瓶颈?

2.5 需求评审检查表模板

文档基本信息

  • 文档名称:_________
  • 产品经理:_________
  • 评审日期:_________
  • 测试参与人:_________
检查类别检查项是否通过问题描述/备注
完整性1. 需求是否覆盖了所有声明的业务目标?☐ 是 ☐ 否
2. 所有功能点和用户角色是否都已定义?☐ 是 ☐ 否
3. 正常流程、替代流程和异常流程是否都已描述?☐ 是 ☐ 否
4. 前置条件、后置条件是否明确?☐ 是 ☐ 否
明确性5. 术语、名词是否有统一且清晰的定义?☐ 是 ☐ 否
6. 业务规则和逻辑计算是否无歧义?(例如:计算公式、排序规则)☐ 是 ☐ 否
7. 输入/输出字段的格式、类型、范围是否有约束?☐ 是 ☐ 否
一致性8. 新需求与系统现有功能或业务规则是否存在冲突?☐ 是 ☐ 否
9. 文档内部描述前后是否一致?☐ 是 ☐ 否
10. UI/交互描述是否与设计规范一致?☐ 是 ☐ 否
可测试性11. 每个需求/用户故事是否有明确、可衡量的验收标准?☐ 是 ☐ 否
12. 测试数据的需求和来源是否明确?☐ 是 ☐ 否
13. 性能、安全、兼容性等非功能需求是否有要求?☐ 是 ☐ 否
其他14. 是否存在外部依赖(第三方接口、服务)?其稳定性和SLA是否明确?☐ 是 ☐ 否
15. 是否存在已知的技术风险或实现难点?☐ 是 ☐ 否

评审结论:

  • 通过 - 所有问题已解决,可进入下一阶段。
  • 有条件通过 - 存在少量遗留问题,但不影响整体设计,需在开发前解决。
  • 不通过 - 存在重大缺陷或大量不确定性,需要重新评审。

三、参与与互动:测试需求评审中

在评审会议上,测试工程师应积极主动,从"可测试性"和"用户体验"角度出发,提出建设性意见。

3.1 举例说明:用户登录功能增强需求

需求描述测试工程师在评审会上可以提出的问题/建议
"用户可以使用手机号或邮箱登录。"1. 边界与格式:手机号的格式有要求吗?(是否支持国际区号?)邮箱名是否区分大小写?2. 唯一性:如果一个手机号同时绑定了两个邮箱,登录时会怎样?
"登录失败3次后,需要输入图片验证码。"1. 计数逻辑:3次失败是指在多长时间内?是一个会话内还是永久累计?计数会在成功登录后重置吗?2. 用户体验:验证码是每次失败后都需要,还是仅在第3次及以后需要?验证码过期时间是多长?3. 安全性:是否有考虑防止暴力破解的机制?比如锁定账户?
"登录成功后,跳转到首页。"1. 场景覆盖:如果用户是在访问一个需要登录的页面时被引导至登录页的,登录成功后是跳转到首页,还是跳转回他最初想访问的页面?
(隐含需求/异常流)1. 网络与异常:网络异常时,点击登录按钮有什么反馈?2. 数据兼容:如果用户从旧版本升级而来,旧的登录方式和新方式如何处理?3. 依赖项:短信/邮件服务如果不可用,登录流程如何表现?是否有降级方案?

评审中的行为准则:

  • 聚焦问题,而非对人:提问时使用"这个需求是否考虑了...?"而不是"你这里写错了"。
  • 记录关键结论:对于会上讨论后达成一致的修改点,要明确记录下来。
  • 确认验收标准:与产品经理和开发确认每个用户故事的"完成定义",特别是可验证的验收标准。

四、跟进与输出:测试需求评审后

评审会议的结束不代表测试工作的结束。而是测试任务的正式开始,我们需要进行汇总同步。

4.1 整理并输出评审意见

  • 将评审会上记录的问题、讨论结果和待办事项进行整理。
  • 以邮件或协作工具的形式发送给所有参会人员,确保信息同步。
  • 参考:【需求评审检查表】进行汇总

4.2 跟踪问题闭环

  • 跟踪产品经理对需求文档的修改情况。
  • 确认所有提出的关键问题都已在最新版文档中得到解决或澄清。

4.3 启动测试设计

  • 基于最终确定的需求文档,正式开始编写测试计划和测试用例。
  • 将评审中识别的风险点纳入测试策略,作为测试重点。

4.4 更新测试资产

如果需要,将评审中明确的新业务规则、术语定义更新到团队的测试知识库中。


总结

评审会议的结束,标志着测试活动由需求理解阶段正式转入测试实施阶段。作为此阶段的关键起点,我们必须立即进行"汇总同步": 一:整理并分发会议纪要,将口头共识转化为书面基准; 二:跟踪遗留问题的闭环,确保所有歧义在测试开始前均已澄清。 这些流程规范都是统一各方认知,为后续测试设计与开发铺平道路。

Powered by VitePress

🔒 需要口令解锁

关注微信公众号 测开阿Duang
回复关键词 「密码」 获取口令

公众号二维码

解锁后本浏览器长期有效