建立缺陷预防的思想通过统计抽样等方式不断改进测试,自动工具完全支持测试用例的运行开展各种与测试有关的度量活动。
首要目的不是发现bug而是确保被测系统满足需求。 测试不能丢给用户去做
1.定义需求(委托方提出)
2.分析需求(双方共同执行,生成需求规格说明)
3.实现需求(开发人员)
4.校验需求(测试人员)
(提供被测對象、准备相关预期、设计测试用例、搭建测试环境、运行测试用例、检查测试结果、记录测试过程、报告发现的缺陷、执行回归测试)
(提供被测对象、准备用户需求、阅读代码、阅读文档、报告发现的缺陷、执行回归测试)
(提供被测对象、准备用户需求、搭建测试环境、设计测试用例、编写测试脚本、运行测试用例、检查测试结果、记录测试过程、报告发现的缺陷、执行回归测试)
覆盖度高、数量少、冗余度低、缺陷定位能力高、复杂度低
(时间、计划人、使用方法、涉及资源、遵循标准、测试对象、可能的风险)
输入:需求规格說明、项目计划
2.设计 (设计测试样例、设计测试过程)
3.实施 (运行测试用例、检查测试结果、提交测试报告)
4.评估 (评估测试系統、评估被测系统)
纠编:测试囚员不应对所有缺陷负责
需求模糊不清(需要需求规格说明)
需求变化无常(应确保需求稳定)
(满足数據类型但不在范围内、不完全满足数据类型、输入条件缺失)
可以理解为从输入域到输出域的映射
简单有效、开发与测试可以并行、对测试人员技术要求低。
2.定义邻域(每个邻域大小可不同)
1.划分等价类(即某段区域内数据性质相同)
可以将一段区域分为一个有效等价类(测试功能是否实现)与两个无效等价类(测试容错性)
n?m块等价类只需要
一般采用强覆盖,开发周期紧迫时用弱覆盖
s为输入的条件数(即每个条件的q一样,每个测试用例都需要s个條件)
当每个测试用例都需要s个条件但q不同时,选取最大的作为q
L9?(34)为例。其中每一个的范围都是1,2,3
该表中每个条件的每个数据出现次數相同。
mn类型的等水平正交表中