一、测试分析 测试需求来源 开发需求DR;协议标准需求PR;用户需求UR;案例库需求LR;竞争需求CR;继承需求SR; 2. 测试项分析步骤 a. 为分析的测试项编号; b. 注明来源:开发文档/法律条款/案例库编号 c. 整合测试项:删除合并重复测试项;大的测试项分解为测试子项; d. 分析测试项之间的关系; 3. 测试分析方法 a. 质量模型分析法:功能测试项、效率测试项、可靠性、易用性、可维护性、可移植性; b. 用户场景分析法:游客、普通用户、VIP用户、管理员用户等,不同角色权限不同,测试点也不同; c. 继承性分析:新增功能,继承旧功能、新旧功能之间关系、影响程度高低; d. 功能交互分析:功能点与功能点之间、时序(并行、串行)、主被动; 4. 划分测试项优先级 5. 测试设计:思路--测试是不能穷举,根据一些设计方法去选取一些数据尽量覆盖多个测试点; 二、测试设计 1)黑盒测试用例设计技术 1. 等价类划分 概念:将输入/输出域分为若干个子集,从中选取代表数据,如果被选取的数据测试没有问题,就认为未被选取的数据测试也没有问题; 相关术语:有效等价类/无效等价类(针对输入的数据是否有意义,是否合法,是否正确) 原则:a. 若输入(输出)是一个取值范围或者值的个数,则划分一个有效等价类,两个无效等价类; b. 若输入(输出)是一个有限的集合或者必须如何的条件或者布尔值,则划分成一个有效等价类和一个无效等价类; c. 若输入(输出)已经划分好有效等价类和无效等价类,针对有效等价类具体的值有不同的处理结果和方式,则划分成多个有效等价类和一个无效等价类; d. 若输入(输出)要同时满足多个条件,则划分成一个有效等价类和多个无效等价类(从不同角度违反规则); 步骤:将SRS划分成规格片段→找出输入条件→进行等价类划分→给划分每一个等价类编号→选代表数据设计用例→直到所有等价类都被覆盖; PS:编写用例原则:一条测试用例要尽量覆盖多个有效等价类&&一条测试用例只覆盖一个无效等价类; 2. 边界值分析 概念:边界值分析法是对等价类划分法的一种补充,大量的经验数据表明,边界是问题多发区,如果边界测试没有问题,就认为内部数据发生问题的概率较小; 相关术语:上点→边界上的点;离点→离边界最近的点(闭区间,离点在边界外,开区间离点在边界内); 内点→边界内任意一点; 原则:a. 如果输入(输出)是一个取值范围或者值的个数,则以边界或者边界附近的值作为测试用例数据选取; b. 如果输入(输出)是一个有序的集合,则以第一个元素和最后一个元素作为测试用例数据选取; c. 如果输入(输出)的值的个数是一个取值范围,则以最大值;最大值+1;最小值;最小值-1作为测试用例数据选取; d. 如果是一个内部数据结构,则以极限值作为测试用例数据选取; 步骤:将SRS划分成规格片段→找出输入条件→进行等价类划分→给划分每一个等价类编号→分析每个数据类型,判断是否有边界值→生成用例; PS:只有等价类和边界值才能生成最终的测试用例,其它测试设计方法生成的都是测试规则或者测试路径(逻辑测试用例)