启发式测试二部曲
启发式测试计划语境模型 Heuristic Test Planning Context Model和启发式测试策略模型 Heuristic Test Strategy Model 都是来自于测试大师James Bach提出的框架模型用来指导测试计划和测试设计。
- HTSM是测试设计的参考框架,提供了不同维度的指导词来启发测试人员的思维来帮助测试设计和测试策略的制定
- HTPCM是测试计划的参考框架,提供了不同维度的语境关键词来启发测试计划制定人员决定测试过程和测试任务
本文主要记录我对HTPCM的学习和理解。
什么是HTPCM
为了保证测试过程的有效性和减少测试浪费,我们需要在着手开始测试前制定测试计划。这个测试计划需要结合项目情况,
在网上有很多test plan的模板,如果照搬这些千篇一律的模板,我们可能会失去对项目情况的深度思考,造成测试计划考虑不全从而影响测试过程。HTPCM提供了一些基于语境的关键词来启发测试人员对项目、产品和测试资源的深度思考和理解,从而制作出较好的测试计划。HTPCM的特征是测试计划者通盘考虑产品需求,项目环境,测试小组,测试资源,明确测试任务,并制定相应的测试过程。
HTPCM的内容
[图片上传失败...(image-9c568-1512727783193)]
上面展示了HTPCM的基本元素和结构。语境(开发&测试团队&测试实验室&需求)决定了测试过程和任务。任务又是测试过程的目标。
任务 - 测试小组应该提供的服务
* 寻找重要的缺陷
* 评估质量和风险
* 标准认真
* 满足过程要求
* 服务关系人
* 承担责任
* 对质量保证提出建议
* 对测试提出建议
* 对质量提出建议
* 最大化效率
* 最小化开销
* 最小化时间
开发 - 是产品开发的环境。测试小组要推动开发环境的改变,让它更有利于测试工作
* 产品
* 项目环境
* 项目管理方法
* 配置管理制度
* 缺陷预防手段
* 开发小组
测试团队
* 专家经验
* 工作负载
* 团队凝聚力
* 团队动力
* 领导力
* 项目协作
测试实验室 - 测试小组可利用的资源
* 测试平台
* 测试工具
* 测试程序库
* 缺陷管理系统
* 办公平台
需求 - 计划测试的过程也是一个学习需求的过程,只有理解需求才能正确地设定测试目标
* 产品愿景
* 关系人
* 质量标准
* 参考资料
测试过程 - 是完成测试任务所需要执行的活动
* 测试策略 - 实施测试的指导思想
* 保障条件 - 如何利用测试资源实现测试策略
* 工作产品 - 测试过程的产出
语境如何影响测试计划
好的测试计划是基于语境的,只有符合项目情况的测试方案才能有效地工作。 测试方法各有巧妙,无所谓好坏。讨论优秀,不应该只考虑测试方法本身,而是要考虑测试,实现和环境是否紧密联系,即优秀是对测试,实现和环境之间关系的描述。
[图片上传失败...(image-b197b2-1512727783193)]
- 了解项目的干系人以及他们重视什么
- 了解当前项目情况,了解对于测试工作的限制以及能获得的测试资源
- 协商并确定测试任务
- 根据要求、约束、资源和任务,制定测试过程
- 监控项目情况,并持续调整测试计划,使项目、任务和测试过程可以和谐一致