测试策略
测试策略要解决的问题是根据测试需求、资源配备及工程环境,因地制宜剪裁测试工作,形成测试工作的测试流程。对于一个小项目做大测试是得不偿失的,同样,对一个大项目做小测试也是不负责任的。通常,对于工作量小于5个人月的普通商用软件,重点应该抓系统测试(包括功能测试、性能测试及GUI测试等)及验收测试,而不宜铺排开来,面面俱到。而对于一个工作量接近30个人月的中型商用软件而言,一般应该认真完成需求验证、设计验证、单元测试、集成测试、系统测试及验收测试,而不宜只关注系统测试。但这并不绝对,针对产品的测试流程设计还需要从用户的实际需求出发,比如,用户希望软件有好的人机交互界面,这时,就应该考虑采用快速原型生成工具来进行用户界面设计的测试; 又如用户希望软件有较好的健壮性,这时,就应该考虑进行相应的负载测试/可恢复性测试等性能测试内容。
一个好的测试策略设计应能清楚地回答下列问题:是否在测试成本与测试预期效果之间达到了最佳平衡?是否在测试需求与测试活动安排之间达到了最佳平衡?策略设计形成的技术路线是否在工程实际与企业质量承诺之间达到了最佳平衡?策略设计形成的技术路线是否具有可行性?有无设计依据?
测试方案
测试方案是对测试策略设计形成的技术路线的进一步细化。如某一技术路线规定了某小型软件项目测试工作要重点围绕“功能测试与验收测试”展开。那么测试方案设计阶段就必须具体定义哪些功能需要被测试到,以及如何去测试,哪些部分需要做验收,以及采用什么形式做。
测试方案的设计除了要明确定义各个测试活动的对象、执行人员、测试进度、放行标准等一系列属性外,还要充分考虑到成本与技术可行性。一个好的测试方案总是遵循以下设计原则:测试成本与测试工作产生的效益处于最佳比值; 各具体测试活动描述清晰,目标明确,内容完备; 测试手段是可行的; 测试产生的结果是可以用于指导产品质量改进的。
测试计划
测试计划是将测试方案具体安排到项目的各个周期中,确定在项目各个周期中具体实施的测试工作。
所以,最终的测试计划可能包括以下40点:
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
标题 |
软件标识 |
目录 |
文档的目的和阅读人群 |
测试对象描述 |
软件产品概述 |
相关文档列表 |
有关的标准/法规 |
可追溯的需求 |
有关的命名约定和标识约定 |
项目相关部门和成员/联系信息/职责 |
测试项目组和人员/联系信息/职责 |
假设和依赖 |
项目风险分析 |
测试优先级和重点 |
范围和测试限制 |
测试过程描述 |
采用的测试方法描述 |
测试环境描述 |
测试环境有效性分析 |
测试环境建立/配置 |
软件移植性 |
软件配置管理过程 |
测试数据建立需求 |
系统和错误日志描述 /工具 |
缺陷管理/辅助工具 |
自动化测试描述 |
测试工具描述 |
测试脚本/测试代码维护过程和版本控制 |
跟踪/解决的工具和流程 |
项目测试度量标准 |
报告需求/测试交付产品 |
软件入口/出口标准 |
测试周期/标准 |
测试暂停/重启标准 |
人员分配 |
人员培训 |
测试地点/场所 |
测试项目组之外可用的资源 |
与所有权相关的级别/分类/安全/许可 |