软件测试几大方法

目录1 等价类划分法概述定义2 边界值3 正交实验4 什么是因果图及判定表法?5 场景法1 等价类划分法概述定义 定义:输入具有代表性的数据子集等价类 有效等


1.等价类划分法概述定义

定义:输入具有代表性的数据子集
	等价类 有效等价类---满足需求
    	   无效等价类---不满足需求
(概念)计算1-100之间整数的和
	有效等价类  1-100    
    无效等价类 大于1     
    无效等价类   大于100   
要点:构造无效规则时要注意:只能同时违背一条规则(控制变量法)
总结
等价类适用场景
有数据输入的地方,就可以使用等价类划分法
测试思想:
从大量数据中划分范围(等价类),然后从每个范围中挑选代表数据,这些代表数据要能反应这个范围内数据的测试结果
概念:
有效等价类:对程序来说,有意义的、合理的数据(正确的,有效的数据)
无效等价类:对程序来说,没有意义、不合理的数据(错误的,无效的数据)

2.边界值

为什么使用边界值法:
	边界值分析法就是对输入输出的边界值进行测试的一种黑盒测试方法
    长期的测试工作经验告诉我们,大量的错误发生在输出范围的边界上,而不是发生在输出范围的内部(从开发角度可以发现)。因此针对各种边界情况设计测试用例,可以查出更多的错误
边界值取值情况:
	使用边界值分析法设计测试用例,首次按应该确定边界情况,通常输入和输出等价类的边界,就是应着着重测试的边界情况,应当选取正好等于,刚刚大于或者小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据
    ·[1 100]     闭区间    上点1,100   外点0,101   内点2,99
	(1,100]    左开右闭 上点2,100  外点1,101 内点3,99
	(1,100)   左开右开 上点2,99  外点1,100   内点3,98
总结:
     边界值适用场景:
     	有数据输入的地方,在实际工作中,一般和等价类划分一起使用
     测试思想:
     	边界值是程序员在编程时容易出错的位置,所以要叫测试边界
     概念:
     是有效等价类和无效等价类之间的分界点,叫边界值(最大值,最小值),还要测试次边界,也就是边界值两边的数据

3.正交实验

	应用场景:在一个界面中有多个控件,每个控件有多个取值,控件之间可以相互组合,不可能(也没有必要)为每一种组合编写一条用例,如何使用最少最优的组合进行测试。——正交排列法
正交公式
	正交表是一种特制的表格,一般用Ln(mk)表示,L代表是正交表,n代表试验次数或正交表的行数,k代表最多可安排影响指标因素的个数或正交表的列数,m表示每个因素水平数,且有n=k*(m-1)+1

4.什么是因果图及判定表法?

因果图是用图解的方法表示输入的各种组合关系,依据因果图写出判定表,从而设计相应的测试用例. 因果图法比较适合输入条件比较多的情况,测试所有的输入条件的排列组合。所谓的原因就是输入,所谓的结果就是输出。因果图基本图形符号。
恒等:若原因出现,则结果出现;若原因不出现,则结果不出现。(如果C1=1 ,那么E1=1,如果C1=0,那么E1=0)
非(~):若原因出现,则结果不出现;若原因不出现,则结果出现。 (如果C1=1 ,那么E1=0,如果C1=0,那么E1=1)
或(∨):若几个原因中有一个出现,则结果出现;若几个原因都不出现,则结果不出现。
与(∧):若几个原因都出现,结果才出现;若其中有一个原因不出现,则结果不出现(全0为0,有1为1)
E(互斥):可以不选,如果选只能选1个
I(包含):至少选1个(可以多选,不能不选,最少得选1个)
O(惟一):必须要选,而且只能选1个
R(要求):如果a=1 那么要求b必须是1,反之如果a=0,那么b值无所谓
M(屏蔽):当a=1时,b=0,当a=0,b的值有可能是1,也有可能是0注意:唯一和互斥的区别:互斥可以不选,唯一必须要选1个

因果图法是一种利用图解法分析输入的各种组合情况,从而设计测试用例的方法,它适合于检查程序输入条件的各种组合情况
特点:
1.考虑输入条件的相互制约及组合关系
2.考虑输出条件对输入条件的依赖关系
因果图的核心
	因果图法比较合适输入条件比较多的情况,测试所有的输入条件的排列组合,所谓的原因就是输入,所谓的结果就是输出。
	因果图的“因“—输入条件
	因果图的“果”—输出结果

因果图法要注意考虑:
	1.所有输入/输出条件的相互制约关系以及组合关系
	2.输入条件的依赖关系,也就是什么样的输入组合会产生怎么样的输出结果,即“因果关系”

5.场景法

通过运用场景来对系统的功能点或业务流程的描述,从而提高测试效果的一种方法

每个经过用例的可能路径,可以确定不同的用例场景。从基本流开始,再将基本流和备选流结合起来,可以确定以下用例场景:
场景 1 基本流
场景 2 基本流 备选流 1
场景 3 基本流 备选流 1 备选流 2
场景 4 基本流 备选流 3
场景 5 基本流 备选流 3 备选流 1
场景 6 基本流 备选流 3 备选流 1 备选流 2
场景 7 基本流 备选流 4
场景 8 基本流 备选流 3 备选流 4

设计步骤编辑
1. 根据说明,描述出程序的基本流及各项备选流
2. 根据基本流和各项备选流生成不同的场景
3. 对每一个场景生成相应的测试用例
4. 对生成的所有测试用例重新复审,去掉多余的测试用例,测试用例确定后,对每一个测试用例确定测试数据值