一,测试用例
1,什么是测试用例,什么是测试肢本,两者的关系是什么:
为实施测试而向被测试系统提供的输入数据、操作或各种环境设置以及期望结果的一个特定的集合。
主要记录了测试的过程,步骤,输入的数据,预期结果等内容,执行测试之前写的指导测试过程的文档,包括:编号,测试目的,用例描述,预期结果;
测试脚本是为了进行自动化测试而编写的脚本。
测试脚本的编写必须对应相应的测试用例
2,写测试的用例的依据是什么:
相关文档(需求,开发文档,用户手册),结合开发出的软件,讨论沟通;
3,编写用例的方法:
等价类划分,边界值,因果图,判定表,正交排列法,场景法,测试大纲方法,状态转换图;
二,等价类划分
1,等价类划分属于典型的功能测试方法,根据程序对数据的要求,把程序的输入域划分成若干个部分,区分出哪些数据是有效的,哪些数据是无效的,从每个部分中选取少数代表性数据作为测试用例,这样,每一类的代表性数据在测试中的作用都等价于这类中的其他值;
2,应用场合:
只要有数据输入的地方就可以使用,从无限多的数据中选取少数代表性的数据进行测试;
3,核心概念:
3-1,有效等价类: 对程序规格有意义,合理的输入数据集合,程序接收到有效等价类数据,可以正确执行,计算;
3-2,无效等价类:对程序规格无意义,不合理的输入数据集合,程序接收到无效等价类数据,应该给出错误提示,或者要本不让用户输入;
注意:穷举测试是不现实的,但不做穷举测试会存在风险,编写用例的方法,就是使用更合理的数据,在最少的测试成本情况下,尽可能降低风险;
4,一般步骤:
划分等价类,细划等价类划分,建立等价类表,编写测试用例;
5,等价类划分经验:
5-1,有效等价类一般可以直接在需求中找到;
5-2,无效等价类:
5-2-1,必填项(不能为空)——为空
5-2-2,不能重复的——重复
5-2-3,数据有范围要求——超出范围
5-2-4,有字符个数要求——超出范围
5-2-5,填写项允许的格式,样式(整数,小数,字符)
5-2-6,针对于小数,小数点后位数要求
说明:每个控件的有效等价类和有效边界值的数据不会完全相等,会造成编写用例时数据的冗余(测试过的数据再选一次或多次)
二,边界值
1,应用场合:
只要有数据输入的地方,有效无效数据的分界点,需要单独拿出来测试;
注意:边界值一般和等价类方法一起应用,找到有效无效数据的分界点(最大值和最小值)及其两边的点进行测试,形成一套完整的测试方案;
2,如何使用:
将边界值的点(一般3个点)单独写用例;
说明:边界值的数据本质上可以归为有效和无效的范畴,但从测试技术角度来讲,需要单独拿出来测试;
3,用例的优化:
3-1,对于不同控件的有效等价类及有效的边界值,可以尽可能在一条用例中进行测试,不同控件的有效等价类(及边界)可以组合,减少用例数量;
3-2,在一条用例中,先一次只测试一个控件的无效等价类,无效等价类在开始的时候不能组合,避免“屏蔽”现象发生,前面控件的错误提示一出现,后面控件的错误不会提示;
3-3,可以适当考虑无效等价类的组合,验证软件处理极端数据的能力;
三,因果图法
1,应用场合:
在一个界面中,有多个控件测试的时候,要考虑控件的组全关系,不同的控件组合会产生不同的输出结果的组合,为了弄清什么样的输入组全会产生什么样的输出组合,使用因果图法;
2,核心:
因——原因,输入条件 ;果——结果,输出结果;
使用图形的方式,分析软件输入和输出的对应关系;
3,图形符号:表示输入和输出的对应关系
3-1,基本图形:表示输入和输出的对应关系
3-1-1,恒等(——):若原因出现,则结果出现;若原因不出现,则结果也不出现;
3-1-2,非(~):若原因出现,则结果不出现;若原因不出现,则结果出现;
3-1-3,或(V):若几个原因中有一个出现,则结果出现;若几个原因都不出现,则结果不出现;
3-1-4,与(^):若几个原因都出现,则结果出现;若其中有一个原因不出现,则结果不出现;
3-2,约束(限制条件)图形:只能单独限制输入,或者单独限制输出
3-2-1,互斥(E):表示如果有 a,b,c 三个原因,它们不会同时成立,最多只有一个成立;
3-2-2,包含(I):表示如果有 a,b,c 三个原因,它们至少有一个必须成立;
3-2-3,唯一(O):表示如果有 a,b,c 三个原因,它们必须有且只有一个成立;
说明:唯一的情况有默认值,而互斥没有默认值;
3-2-4:要求(R):表示如果有 a,b 两个原因,如果 a 出现,b 也必须出现;
3-2-4:屏蔽(M):表示若 a=1,则 b 必须为 0;而当 a 为 0 时,b 的值不确定
4,使用因果图法分析程序:
4-1,找出所有的原因(输入),编号——初步分析需求;
4-2,找出所有的结果(输出),编号——初步分析需求;
4-3,在步骤 1 的基础上,找到输入的限制关系和组合关系——深入分析需求;
4-4,在步骤 2 的基础上,找到输出的限制关系和组合关系——深入分析需求;
4-5,找到输入组合和输出组合的对应关系(什么样的输入组合会产生什么样的输出组合);
4-6,根据因果图,画出判定表;
4-7,根据判定表编写用例,把判定表的一列转换成一条用例
5,因果图法的局限性:
每个控件的条件(或取值)最好为 2 个或 3 个,比喻按钮按下或不按下,复选框选择还是不选择,单选按钮选还是不选,只有两三项的下拉框
说明:判定表法就是因果图法的简化,步骤完全一样,不用画图而已;
四,正交排列法
1,应用场合:在一个界面中,有多个控件,每个控件有多个取值,控件取值的组合数据很大,不可能(也没有必要)为每一种组合编写一条用例。如何使用最少最优的组合进行测试——正交排列法
2,区别:判定表(因果图)也是考虑控件组合,但是组合数据较少(一般不会超过20种)而且要求测试全面
3,概述:使用最小的测试过程集合获得最大的测试覆盖率;
4,正交表:

n:是表的行数,也就是需要测试组合的次数
K:是表的列数,表示控件的个数(因素的个数,或因子个数)
m:是每个控件包含的取值个数(各因素的水平数,即各因素的状态数)
浙公网安备 33010602011771号