测试用例:(将测试活动进行科学的组织和规划形成的集合)
概念:为了特定目的(验证产品功能实现是否满足用户需求)而设计的
包含(测试输入,预期结果等)的文档,EXCEL,Xmind等。
元素: 用例编号,用例标题,优先级,预置条件,输入数据,操作步骤,预期结果
优点: (1、便于理清测试思路,确保功能点覆盖2、便于把控测试工作进度3、便于回归测试
4、便于提前准备测试数据5、便于测试工作组织,提高测试效率,降低测试交接成本)
1、组织性:便于理清测试思路,避免盲目测试,提高测试效率。
2、功能覆盖:确保功能点不被遗漏
3、重复性:便于回归测试
4、跟踪 :统计测试用例通过和失败的比例,跟踪缺陷多的模块
5、测试确认:高风险程序,确认测试按照计划进行。
缺点: 1、需求不明确的情况下很难进行测试用例的编写
2、测试人员思维 容易被测试用例的规范步骤 限制
3、需求变更后,用例难以及时更新,从而影响覆盖率,维护成本加大
4、用例需要不断维护,复用成本高
)
原则: 1、唯一:用例描述明确,目的唯一,一条用例的结果因该是唯一的
2、简明:用例描述简洁明了,不要使用模糊不清的描述。
3、单一:一条用例只测试一个点
常用黑盒测试用例设计方法:
1、等价类划分法 2、边界值分析法 3、因果图判定表 4、状态迁移图 5、流程分析法 6、正交实验法
场景法,错误猜想法,异常分析法,输入输出域覆盖法
等价类划分法:
概念:通过科学的方法找到具有共同特性的测试输入的子集,
优点:(使用少量具有代表性的测试数据可以取得较好的测试效果,并提高测试效率)
等价类:所有测试数据中,具有某种共同特征的输入子集。
有效等价类:(满足 需求要求,合法的),输入数据集合,
无效等价类:(需求要求 相悖的,不合法的),输入数据集合(eg:必填:不填)
应用场景:单一 输入 输入框
步骤:
1、需求分析
2、划分等价类(有效:)(无效:)
3、设计测试用例
原则:
1、输入条件规定取值范围
2、输入条件规定了取值集合
3、输入条件是BOOL时,只需一个有效等价类
4、规定了一组数值,规定的每个数值都是一条有效等价类
5、规定输入规则时,符合规则为有效,无效等价类可以从多个方向违反规则
6、为不同处理方式划分不同等价类
边界值分析法:(对等价类划分法的一种补充,测试经验:大量错误容易发生在输入输出边界上)
概念:对输入或输出的边界值(有效无效等价类的边界)进行测试的一种测试方法
边界值取点:
1、上点:边界上的点,边界本身
2、离点:离上点最近的
(闭区间时,上点在区间内,离点在区间外、开区间,上点在外,离点在区间 内)
3、内点:在范围内的任意点
原则:
1、输入(输入)规定了取值范围,该范围为 边界
2、输入(输入)规定了字符长度,该长度为 边界
3、 规定了有序集合,集合开始和结束元素为 边界
4、 规定了使用某个数据结构,以数据结构的边界点为 边界
步骤:
1、分析需求
2、确定边界
3、确定测试项(上点、离点、内点)
4、编写测试用例
正交排列法:
概念:用最少的测试用例,获得最大的测试覆盖率。
应用场景:输入的数据或输入数据间组合量很大时,不可能进行穷尽测试
(直接引用,常用正交表,无合适的情况可以使用正交表生成工具)
正交表:一种特制的表,一般的正交表记为:Ln(m^k) 读法:k因素m水平表
n:表的行数,即测试组合数
k:表的列数:因素个数(eg:控件个数)
m:因素的水平数:(eg:控件可取值的数)
步骤:
1、需求分析
2、确定因素、水平
3、选取合适的正交表
4、将因素、水平映射到正交表中
5、根据正交表编写测试用例(一行一个用例)
因果图判定表:
概念:输入与输入之间有组合关系,输入输出之间有制约关系
判定表组成:
1、条件桩: 所有的输入条件
1.1、条件项:每个可取的条件值
2、动作桩:所有的可能的输出结果
2.1、动作项: 可能的结果值
应用场景:多输入,多输出,输入输出之间有依赖关系
步骤:
1、列出条件桩,动作桩。
2、填入条件项,动作项,
3、对条件桩,动作桩进行组合得到判定表
4、一列数据做一条测试用例
场景法(流程图):
概念:场景法,模拟用户操作软件时的场景,主要用于测试系统的业务流程,
应用场景:集成测试,系统测试,验收测试
基本符号:
1、圆角矩形(流程开始,结束)
2、菱形(用于,判断)
3、平行四边形(输入输出)
4、矩形(执行操作,处理)
5、单向箭头(流程进行的方向)
步骤:
1、需求分析
2、绘制流程图、
3、根据流程图设计测试用例(一条路径一条用例)
状态迁移法:()
概念:关注被测对象的状态变化,测试被测对象状态之间的转化是否与需求保持一致
状态:被测对象在特定输入条件下所保持的响应形式。
步骤:
1、需求分析,明确状态节点
2、绘制状态迁移图
3、绘制状态迁移树
4、根据状态迁移树编写测试用例
错误推测法:利用经验。。。
概念:
使用场景:1、重要功能,相同类型产品,2、任务紧,时间紧,资源少
黑盒测试用例设计方法总结:
1、单一输入(输入之间没有组合关系)》【等价类划分】
2、输入有边界(长度,数据范围。。。)》【边界值分析】
3、多输入,多输出,输入之间有组合关系 ==》【因果图,判定表】
4、用最少的测试用例获得最大测试覆盖率 》【正交表】
5、多个功能的组合测试 业务流程》【场景法,流程图】
6、进一步补充,经验 ==》【错误推测】