等价类的定义
划分等价类原则
3、对等区间划分
首先呢,它是测试用例设计的非常规形式的方法。它将被测对象的输入/输出划分成一些区间,被测软件对一个特定区间的任何值都是等价的。形成测试区间的数据不只是函数/过程的参数,也可以是程序可以访问的全局变量、系统资源等,这些变量或资源可以是以时间形式存在的数据,或以状态形式存在的输入/输出。
例如,程序要进行平方根运算,则“大于等于0的数”为有效等价类,“小于0的整数”为无效等价类。
3、如果规定了输入数据的一组值,并且程序要求每一个输入值分别进行处理,则可以为每一个确定一个有效等价类,此外根据这组值确定一个无效等价类,即所有不允许的输入值的集合。
例如,程序规定某个输入条件x的取值只能为集合{1,3,5,7}中的某一个,则有效等价类为 x=1,x=3,x=5,x=7,程序对这4个数值分别进行处理;无效等价类为x不等于1,3,5,7的值的集合。
一、等价类划分法的概念
等价划分法是黑盒测试用例设计中一种常用的设计方法,它将不能穷举的测试过程进行合理分类,从而保证设计出来的测试用例具有完整性和代表性。
等价类划分法是把所有的可能性的输入数据,即程序的输入域划分成若干子集,然后从每一个子集中选取少数具有代表性的数据作为测试用例。所谓等价类是指输入域的某个子集合,所有等价类的并集就是整个输入域。在等价类中,各个输入数据对于揭露程序中的错误是等效的,它们具有等价性。
在确立了等价类之后,建立等价类表,列出所有划分的等价类
再根据列出的等价类表,按以下步骤确定测试用例:
(1)为每一个等价类规定一个惟一的编号;
(2)设计一个新的测试用例,合其尽可能多的覆盖未覆盖的有效等价类,重复这个过程,直到所有的有效等价类均被测试用例所覆盖;
等价类划分法
等价类划分法1、定义:等价类是指某个输入域的子集合。
在该子集合中,各个输入数据对于发现程序中的错误都是等效的。
并合理地假定:测试某个等价类的代表值就等于对这一类其他值的测试。
2、等价类划分是一种典型的黑盒测试方法,用这一方法设计测试用例完全不考虑程序的内部结构,只根据对程序的要求和说明,即需求规格说明书。
我们必须仔细分析和推敲说明书的各项需求,特别是功能需求。
把说明书中对输入的要求和输出的要求区别开来并加以分解。
3、等价类的划分:有效等价类:是指对于程序的规格说明来说,是合理的,有意义的输入数据所构成的集合;利用它可以检验程序是否实现了预期的功能和性能。
无效等价类:是指对于程序的规格说明来说,是不合理的,没有意义的输入数据所构成的集合;利用它可以检验程序对于无效数据的处理。
4、确定等价类的原则:一、如果输入条件规定了取值范围,或者值的个数,则可以确定一个有效等价类和两个无效等价类。
二、如果输入条件规定了输入值的集合,或者是规定了“必须如何”的条件,这时可以确立一个有效等价类和一个无效等价类。
三、如果输入条件是一个布尔量,则可以确立一个有效等价类和一个无效等价类。
四、如果规定了输入数据的一组值,而且程序要对每一个输入值分别进行处理,这时要对每一个规定的输入值确立一个等价类,而对于这组值之外的所有值确立一个等价类。
五、如果规定了输入数据必须遵守的规则,则可以确立一个有效等件类(即遵守规则的数据)和若干无效等价类(从不同角度违反规则的数据)。
六、如果确知以划分的等价类中的各元素在程序中的处理方式不同,则应进一步划分成更小的等价类。
5、等价类测试有:弱一般等价类测试、强一般等价类测试、弱健壮等价类测试、强健壮等价类测试。
边界值1、基于边界值分析方法选择测试用例的原则:1)如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据。
例如,如果程序的规格说明中规定:"重量在10公斤至50公斤范围内的邮件,其邮费计算公式为……"。
离散数学等价类
离散数学等价类
离散数学是一门研究离散结构及其运算规律的数学学科,其中一个重要的概念是等价关系。
等价关系是一种对集合中元素进行分类的方法,将具有相同性质的元素划分到同一个等价类中。
在离散数学中,等价类是以等价关系划分出的子集。
对于一个给定的等价关系R,对于集合A中的元素a和b,如果a和b满足R关系,即aRb,那么a和b属于同一个等价类。
等价类的定义要满足三个性质:自反性、对称性和传递性。
举个例子来说明等价类的概念。
考虑一个集合A表示所有人的集合,定义一个等价关系R表示两个人的年龄相同。
那么对于A中的每个人,他们可以被划分到不同的等价类中,每个等价类中的人年龄相同。
例如,如果集合A中有三个人a、b和c,其中a和b的年龄相同,b和c的年龄相同,那么a、b和c分别属于两个等价类。
等价类在离散数学中有广泛的应用。
它们可以用于表示相似关系,例如在图像处理中用于图像的分割和识别。
此外,在数据库的设计和查询过程中,等价类的概念也扮演了重要的角色。
等价类的划分可以将数据集合划分成更小的、具有相似特性的子集,从而方便进行数据的管理和查询。
总之,离散数学中的等价类是根据等价关系将集合划分成具有相同性质的子集。
它们在不同领域中都有重要的应用,帮助我们理解和处理具有相似特性的元素。
七、等价关系与等价类
上的等价关系。 故R是A上的等价关系。 是 上的等价关系
例 设A={1,2,3,4,5},有一个划分 ,有一个划分S={{1,2},{3},{4,5}},试由划 , 确定A上的一个等价关系 分S确定 上的一个等价关系。 确定 上的一个等价关系。 我们用如下方法产生一个等价关系R: 解 我们用如下方法产生一个等价关系 : R1={1,2}×{1,2}={<1,1>, <1,2> , <2,1> , <2,2>} × R2={3}×{3}={<3,3>} × R3={4,5}×{4,5}={<4,4>,<4,5>, <5,4> , <5,5>} × R= R1∪R2 ∪R3 ={<1,1>, <1,2> , <2,1> , <2,2>, <3,3>, <4,4>,<4,5>, <5,4> , <5,5>} 从R的序偶表示式中容易验证 是等价关系。 的序偶表示式中容易验证R是等价关系。 的序偶表示式中容易验证 是等价关系 本题中确定等价关系的方法与上述定理4 本题中确定等价关系的方法与上述定理4中所述确定等价关系 的方法实质相同 实质相同。 的方法实质相同。
R R
[3]R={2,3}
[4]R={1,4}
[1]R ∩[2]R ∩[3]R= ∅ [1R , [3]R, [4]R} ={{1,4},{2,3}} [1]R ∩ [2]R = ∅ [1]R ∪ [2]R = A
定理3 定理
定理3 集合A上的等价关系 上的等价关系R,决定了商集A/R ,可确定 可确定A 定理 集合 上的等价关系 ,决定了商集
黑盒测试--等价类划分
⿊盒测试--等价类划分1.1. 概念等价类划分法是把程序的输⼊域划分成若⼲部分(⼦集),然后从每个部分中选取少数代表性数据作为测试⽤例。
每⼀类的代表性数据在测试中的作⽤等价于这⼀类中的其他值。
1.2 等价类划分法的应⽤1 等价类是指某个输⼊域的⼦集合。
在该⼦集合中,各个输⼊数据对于揭露程序中的错误都是等效的,并合理地假定:测试某等价类的代表值就等于对这⼀类其它值的测试.因此,可以把全部输⼊数据合理划分为若⼲等价类,在每⼀个等价类中取⼀个数据作为测试的输⼊条件,就可以⽤少量代表性的测试数据.取得较好的测试结果.等价类划分可有两种不同的情况:有效等价类和⽆效等价类。
有效等价类:是指对于程序的规格说明来说是合理的,有意义的输⼊数据构成的集合.利⽤有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。
⽆效等价类:与有效等价类的定义恰巧相反。
设计测试⽤例时,要同时考虑这两种等价类.因为,软件不仅要能接收合理的数据,也要能经受意外的考验.这样的测试才能确保软件具有更⾼的可靠性。
2划分等价类的六⼤原则:⑴在输⼊条件规定了取值范围或值的个数的情况下,则可以确⽴⼀个有效等价类和两个⽆效等价类.例:输⼊值是学⽣成绩,范围是0~100:⑵在输⼊条件规定了输⼊值的集合或者规定了“必须如何”的条件的情况下,可确⽴⼀个有效等价类和⼀个⽆效等价类.⑶在输⼊条件是⼀个布尔量的情况下,可确定⼀个有效等价类和⼀个⽆效等价类. 布尔量是⼀个⼆值枚举类型, ⼀个布尔量具有两种状态: true 和 false 。
⑷在规定了输⼊数据的⼀组值(假定n个),并且程序要对每⼀个输⼊值分别处理的情况下,可确⽴n个有效等价类和⼀个⽆效等价类.例:输⼊条件说明输⼊字符为:中⽂、英⽂、阿拉伯⽂三种之⼀,则分别取这三种这三个值作为三个有效等价类,另外把三种字符之外的任何字符作为⽆效等价类。
⑸在规定了输⼊数据必须遵守的规则的情况下,可确⽴⼀个有效等价类(符合规则)和若⼲个⽆效等价类(从不同⾓度违反规则)⑹在确知已划分的等价类中各元素在程序处理中的⽅式不同的情况下,则应再将该等价类进⼀步的划分为更⼩的等价类3、将等价类转化成测试⽤例:按照[输⼊条件][有效等价类][⽆效等价类] 建⽴等价类表,列出所有划分出的等价类为每⼀个等价类规定⼀个唯⼀的编号.设计⼀个新的测试⽤例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这⼀步.直到所有的有效等价类都被覆盖为⽌.设计⼀个新的测试⽤例,使其仅覆盖⼀个尚未被覆盖的⽆效等价类,重复这⼀步.直到所有的⽆效等价类都被覆盖为⽌.1.3实例 +笔记笔记等价类划分3将等价类转化对于有效等价类,使其尽可能多地覆盖尚未被覆盖地有效等价类成测试⽤例使其仅覆盖⼀个尚未被覆盖的⽆效等价类2.3实例例1:⼈寿保险费率(基本保险费0.50)Xs分析: 等价类划分、边界值分析结合使⽤序号输⼊条件输⼊类型测试数据预期结果1⼩于等于0岁(<=0岁)⽆效-1警告信息235岁以下有效20计算出⽉保险费335-59岁有效51计算出⽉保险费460岁以上有效65计算出⽉保险费边界值分析法序号边界值测试数据预期结果100警告信息23535按额外保险费2.87:计算35959按额外保险费2.87:计算46060按额外保险费6.00:计算实例2免费邮箱申请:在某⽹站申请免费信箱时,要求⽤户必须输⼊⽤户名、密码及确认密码,对每⼀项输⼊条件的要求如下:⽤户名:要求为4位以上,16位以下,使⽤英⽂字母、数字、“-”、“_”,并且⾸字符必须为字母或数字;密码:要求为6~16位之间,只能使⽤英⽂字母、数字以及“-”、“_”,并且区分⼤⼩写。
等价关系与等价类
例:A={52张扑克牌}, R1={<a,b>|a与b同花,a,b是扑克}, R2={<a,b>|a与b同点,a,b是扑克}, 即R1是同花关系, R2是同点关系,R1和R2都是等价关系。 R1把A分为四类同花类, R2把A分为13类同点类。 例:A={0,1,2,3,4,5}, R={<0,0>,<1,1>,<2,2>,<3,3>,<1,2>,<1, 3>,<2,1>,<2,3>,<3,1>,<3,2>,<4,4>,<4, 5>,<5,4>,<5,5>},R把A分成了三个等价类: {0},{1,2,3},{4,5}。
2、定理3-10.1:设给定集合A上的等价关系R,对 于a,bA有aRbiff[a]R=[b]R。 证明:假定[a]R=[b]R,因为a[a]R,故a[b]R,即 aRb。 反之,若aRb,设c[a]RaRcbRcc[b]R 即[a]R[b]R 同理,若aRb,设c[b]RbRcaRcc[a]R 即[b]R[a]R 由此证得若aRb,则[a]R=[b]R。
三、商集 1、定义3-10.3:集合A上的等价关系R,其等价类 的集合{[a]R|aA}称为A关于R的商集,记作A/R。 如例题1中商集T/R={[1]R,[2]R},例题3中商集 I/R={[0]R,[1]R,[2]R} 等价关系R把A的元素分为若干类,各类之间没 有公共元素。确定的R是对集合A进行的一个划分。
二、等价类 1、定义3-10.2:设R为集合A上的等价关系,对任何 aA,集合[a]R={x|xA,aRx}称为元素a形成的R 等价类。 显然,等价类[a]R非空,因为a[a]R。 例题3:设I是整数集,R是模3关系, 即R={(x,y)|xy(mod3),x,yI},确定由I的元素 所产生的等价类。 解:由I的元素所产生的等价类是 [0]R={…,-6,-3,0,3,6,…} [1]R={…,-5,-2,1,4,7,…} [2]R={…,-4,-1,2,5,8,…}
近世代数中关于集合的划分及其应用研究
近世代数中关于集合的划分及其应⽤研究近世代数中关于集合的划分及其应⽤研究摘要我们对集合并不陌⽣,我们所熟知的集合实际上是朴素集合.那么我们为什么要讨论集合的划分呢?因为它在商群、商环、商域等其他⽅⾯中有着极其重要的应⽤.我们要研究集合的划分就必须研究等价关系,因为它们是互相决定的。
因此我们先从等价关系开始说起,之后再来探讨集合的划分,然后观察集合的划分在各⽅⾯的应⽤.第⼀章等价关系与等价类定义1.1:设S 是⼀个⾮空集合,R 是关于S 的元素的⼀个条件.如果对S 中任意⼀个有序元素对(a ,b ),我们总能确定a 与b 是否满⾜条件R ,就称R 是S 的⼀个关系(relation ).如果a 与b 满⾜条件R ,则称a 与b 满⾜条件R ,则称a 与b 有关系R ,记做aRb ;否则称a 与b ⽆关系R.关系R 也成为⼆元关系.定义1.2:设~是集合A 上的⼀个⼆元关系,若满⾜下列性质:(1)⾃反性:?a ∈A ,a~a;(2)对称性:?a,b ∈A,a~b,则b~a;(3)传递性:?a,b,c ∈A,a~b,b~c,则a~c.则称~A 上的⼀个等价关系.当a~b 时,称a 与b 等价.定义1.3:设⼀个集合A 分成若⼲个⾮空⼦集,使得A 中每⼀个元素属于且只属于⼀个⼦集,则这些⼦集的全体成为A 的⼀个分类。
每个⼦集称为⼀个类.类⾥任何⼀个元素称为这个类的⼀个代表.由定义可知,A 的⾮空⼦集族S={i A |i ∈I } 是A 的⼀个分类当且仅当其满⾜下列性质:(1) Ii iA ∈=A; (2)当j i ≠时,=j i A A ?,即不同的类互不相交.定理1.1 设S={i A |i ∈I } 是A 的⼀个分类,规定~为: a~b ?a 与b 同属于同⼀个类,则~是A 上的⼀个等价关系.证明:⾸先由分类的定义,~是A 的⼀个关系.⽽且,显然?a ∈A ,a~a ;⼜?a ,b ∈A ,若a~b ,则a 与b 属于同⼀个类,从⽽b~a ;?a ,b ,c ∈A ,若a~b ,b~c ,则a 与b 属于同⼀个类,b 与c 属于同⼀个类,于是a 与c 属于同⼀个类,从⽽a~c.因此~是A 上的⼀个等价关系.定理1.2 设~是A 上的⼀个等价关系,对于a ∈A ,令[a]={x|x ∈A,x~a},则A 的⼦集族是A 的⼀个分类.证明(1)?a ∈A ,因为,a~a ,所以a ∈[a],从⽽[a]是⼀个⾮空⼦集,并且[]=∈ A a a A.(2)若[a] [b]≠?,则?c ∈[a] [b],于是c~a ,c~b ,从⽽a~b.x ∈[a],有x~a ,于是x~b ,所以x ∈[b],即[a]?[b].同理[b]?[a].这⾥就得到[a]=[b].所以不同的等价类互不相交.该定理中所构成的⼦集[a]称为A 的⼀个包含a 的~等价类.定义4:设~是A 上的⼀个等价关系,由A 的全体不同~等价类所组成的集合族称为A 关于~的商集,记作A/~.第⼆章商群我们研究商群必须要知道:它是由什么样的等价关系确定的什么样的等价类,然后由这些等价类构成的集合再定义⼀种什么样的运算才是商群,最后为了把⼀些较为复杂的群转化较为简单的群,再给出群的同态基本定理.⼀、什么样的等价关系我们知道由⼀个正整数m ,确定了整数间的⼀个等价关系m R ,即a m Rb ?m|a —b ,?a ,b ∈Z .其中Z 是⼀个由1⽣成的循环加群,(m )是Z 的⼀个⼦加群,且从⽽m R 也可以认为是由Z 的⼀个⼦群(m )所确定的.现在将这个思想推⼴到⼀般的群中,设H 是群G 的⼀个⼦群,在G 中定义⼀个关系R :G b a H ab H a b aRb 1-1-∈?∈∈?,,且容易验证R 是⼀个等价关系.利⽤这个等价关系可以决定群G 的⼀个分类.⼆、什么样的等价类定义2.1 设H ≤G ,由等价关系R 所决定的类称为H 的陪集.定理2.1 设H ≤G ,则包含元素a 的陪集等于Ha aH 或.证明将包含元素a 的陪集记作[a].?b ∈[a],有bRa ,即H h ba H h b a 2-111-∈=∈=且,即b=a 1h =∈a h 2Ha aH =,所以有[a]aH ?=Ha .反之,?b ∈Ha aH =,?21h h ,∈H ,使b=a h ah 21=,于是H h ba H h b a 2-111-∈=∈=且,即bRa ,从⽽b ∈[a],所以有aH ]a [].a [Ha aH =?=因此.三、商群定理2.2 设G 是群,N G ,令G/N={aN |a ∈G},规定: ,/G bN aN N ab bN aN N ∈?=,,)(则(G/N,?)是⼀个群.证明⾸先证明?是G/N 的代数运算,即G/N 到G/N 的映射,也就是要证与代表元的选取⽆关.设aN N a 1=,,bN N b 1=则N n a a 111-∈=,.N n b b 21-1∈=因为N G ,所以11111使3111n b b n =,这样N n n n b b b n b b a a b b a ab 3231-111-111-11-111-∈====)()()()()(,从⽽(ab )N=(11b a )N ,所以?是G/N 的代数运算,⼜?,/G cN bN aN N ∈,,有=====N bc aN ]bc [a N ]c )ab [(cN N ab cN bN aN )()()()(),(cN bN aN ??从⽽?满⾜结合律,且,/G aN eN aN aN eN N ∈??=?,从⽽N=eN 是G/N 的单位元.?,/G aN N ∈存在,/G N a 1-N ∈使,eN aN N a N a aN -11-=?=?从⽽.aN N a 1-的逆元是因此G/N 是⼀个群. 该定理中够作的群G/N 称为G 关于N 的商群.四、有限阶群的阶和⼦群阶的关系定理2.3(Lagrange (拉格朗⽇))设G 是有限群,H 是G 的⼦群,则|G|=[G :H]|H|证明因为G 是有限群,所以[G :H]有限,设为k ,则G=U U H a H a 21…H a k U .⼜因为在H 和H a i 之间存在⼀个双射,所以|H a i |=|H|,因此|G|=H a 1+…+H a k =k|H|=[G :H]|H|. 五、群的同态基本定理定理2.4(同态基本定理)设f 是群G 到G ’的同态,则(1)Kerf G ;(2)G/ Kerf ?Imf.证明(1)因为e ∈ Kerf ,所以Kerf ≠?.⼜?a ,b ∈ Kerf ,x ∈G ,即f (a )=f (b )=e ',则f (a 1b -)= f (a )1b f -)(= e '1e -= e ',f(xa -1x )=f(x)f(a)1x f -)(= f(x) e '1x f -)(=e ',从⽽a 1b -,xa -1x ∈ Kerf ,因此Kerf G.(2)在G/ Kerf 到Imf 间规定⼀个法则:Φ:aKerf f (a ).a) ? aKerf ,bKerf ∈Kerf G/ Kerf ,有aKerf=bKerf ?1a -∈Kerf ?f(1a -b)= e '1a f -)(f (b )= e ' ? f (a )=f (b ),从⽽Φ是⼀个G/ Kerf 到Imf 的映射.b )?a ' ∈ Imf ,?a ∈G ,使 f (a )= a ',于是Φ(aKerf )= f (a )=a ',从⽽Φ是满射.c) ? aKerf ,bKerf ∈Kerf G/ Kerf ,有Φ( aKerf)= Φ( bKerf) ? f (a )=f (b )?1a f -)( f (b )=e ' ?f(1a -b)=e ' ? 1a -b ∈Kerf ? aKerf=bKerf ,从⽽Φ是单射.d) ? aKerf ,bKerf ∈Kerf G/ Kerf ,有Φ( aKerf ?bKerf) =Φ( abKerf)=f(ab)= f (a )f (b )=Φ( aKerf)? Φ( aKerf)? Φ(bKerf),从⽽Φ保持运算.因此Φ是同构.于是G/ Kerf ?Imf.第三章商环我们研究商环的思路是:在商加群的基础上再定义⼀种乘法运算,使得该种运算在某⼀⼦环下构成代数运算进⽽对该种运算构成半群且慢⾜:乘法运算对加法运算符合左分配律和右分配律,在学习过程中我们发现理想是可以在我们定义的乘法运算下满⾜上⾯条件的⼦环,因此我们先研究什么是理想,从⽽给出商环的定义,最后得出环的同态基本定理.⼀、理想定义3.1 设(R ,+,?)是⼀个环,(A ,+)是(R ,+)的⼀个⼦加群,(1)若?r ∈R ,a ∈A 有ra ∈A ,则称A 是R 的左理想;(2)若?r ∈R ,a ∈A 有ar ∈A ,则称A 是R 的右理想;(3)若A 既是R 的左理想,⼜是R 的右理想,则称A 是R 的⽴、理想,记作A R .(4)若A R ,且A ≠R ,则称A 是R 的真理想.由定义可知理想⼀定是⼦环.⼆、商环定义3.2 设R 是环,A R ,在商群(R ,+)/(A ,+)={[x]|x ∈R}={x+A| x ∈R }中再规定:[x]?[y]=[xy],? [x] ,[y] ∈R/A ,则(R/A ,+,?)是⼀个环(R/A 称为R 关于A 的商环或剩余类环,[x]=x+A 称为R 模A 的剩余类).证明⾸先证明上⾯规定的乘法运算是代数运算,即与代表元的选取⽆关.设[x]=[1x ],[y]=[1y ],则x-1x ∈A ,y-1y ∈A.因为A 是R 的理想,所以xy-1x 1y =(x-1x )y+1x (y-1y )∈A ,从⽽[xy]= [1x 1y ].其次? [x],[y] ,[z] ∈ R/A ,有([x]?[y])? [z]= [xy] ? [z]=[( xy)z]= [ x(yz)]= [x] ? [yz]= ([y] ? [z]),从⽽?满⾜结合律.且[x] ?([y] +[z])= [x] ?([y] +[z])=[x(y+z)]=[xy+xz]=[xy]+[xz]= [x]?[y]+ [x] ? [z] 从⽽?对+满⾜左右分配律.同理可证,?对+也满⾜右分配律.因此R/A 是⼀个环.三、环的同态基本定理定理3.1(同态基本定理)设f 是环R 到环R ’的同态,则(1) Kerf R ;(2) R/Kerf ?Imf.证明(1)Kerf 是(R ,+)的⼦加群,⼜a ?∈Kerf ,r ∈ R ,有f (ra )=f (r )f (a )=f (r )0'=0', f (ar )=f (a )f (r )=0’f(r)=0',从⽽ra ,ar ∈Kerf R.(2)因为在R/Kerf 到Imf 间存在⼀个双射: ?:a+Kerf f (a ),且保持加法运算。
等价关系中等价类的定义
等价关系中等价类的定义
等价关系是理论集合上的一种重要概念,它定义了一种交换和重新分类的方式,为集合的构造提供理论基础。
等价关系包括一组等价类,而等价类则是一类含有至少二个元素的集合,这些集合间等价,可以互相替换。
等价类是集合的一种量化抽象表达。
它是指在一定环境下,在一般意义上都具
有相同特征的不同类别,它们可以把相同类别的所有元素归纳到一个等价类中,使得这些元素具有相同的特征。
例如,在计算机科学中,在形式语言中,所有的源文本样式都能够归纳到一个等价类中,这个等价类对应着一组语言规则,使得每一种源文本样式都与另一种源文本样式具有相同的语义。
这类思想在组合数学中同样有所应用,即非等价逻辑关系,这类逻辑关系涉及
相同长度的有序序列,每一个有序序列都属于一个不同的等价类,具有相同的语义。
综上所述,等价类是一种重要的概念,它在数学、计算机科学等领域都具有重
要应用。
等价类是一组元素集合,它们具有相同的特征,可以通过相同的规则将不同的元素归纳到一类中,形成等价关系,为集合的构造提供理论基础。
等价类划分
等价类划分法:一、方法简介1.定义是把所有可能输入的数据,即程序的输入域划分策划国内若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。
方法是一种重要的、常用的黑盒测试用例设计方法。
2.划分等价类等价类是指某个输入域的子集合。
在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,并合理地假定:测试某等价类的代表值就等于对这一类其他值的测试,因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件就可以用少量代表性的测试数据取得较好的测试结果。
等价类划分有两种不同的情况:有效等价类和无效等价类。
1)有效等价类是指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。
利用有效等价类可检验程序是否实现了规格说明所规定的功能和性能。
2)无效等价类指对程序的规格说明是不合理的或无意义的输入数据所构成的集合。
对于具体的问题,无效等价类至少应有一个,也可能多个。
设计测试用例时,要同时考虑这两种等价类。
因为软件不仅要能接收合理的数据,也要能经受意外的考验,这样的测试才能确保软件具有更高的可靠性。
3.划分等价类的标准1)完备测试、避免冗余2)划分等价类重要的是:集合的划分、划分为互不相交的一组子集,而子集的并是整个集合3)并是整个集合:备性4)子集互不相交:保证一种形式的无冗余性5)同一类中标识(选择)一个测试用例,同一等价类中,往往处理相同,相同处理映射到“相同的执行路径”。
4.划分等价类的方法1)在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类。
如:输入值是学生成绩,范围是0~100;2)在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可确立一个有效等价类和一个无效等价类:3)在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类。
4)在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类。
等价关系与划分3.1
21
划分(partition)
注: 等价关系R把A的元素分为若干类,各 类之间没有公共元素。 划分: 设A, AP(A),若A满足 (1) A ; (2) x,y( x,yA xy xy= ) (3) UA = A 则称A为A的一个划分, A中元素称为划分 块(block).
6
例2(续)
tsr(R)=trs(R) str(R)=srt(R) =rts( R ) =rst( R ) 自反 对称 传递 等价关 (等价闭包) 系
7
等价类(equivalence class)
设R是A上等价关系,xA,令 [x]R={ y | yA xRy }, 称[x]R为x关于R的等价类, 简称x的等价类, 简记为[x].
R是等价关系,但不直观,用关系图表示。
三个不连通的图
19
二元关系R是自反的,对称的,传递的,且把A分 成了三个等价类,
(A)={{0},{1,2,3},{4,5}}
A/R={[0],[1],[4]} 例6 : R={(a,b)|a≡b (mod3), a,b∈I} 是整数集合I上模3同余的二元关系. 证明R是等价关系。
等价关系与划分
内容提要 等价关系,等价类,商集 划分, 第二类Stirling数
1
等价(equivalence)关系
定义 同余关系 等价类 商集 划分 划分的加细 Stirling子集数
2
等价关系Equivalence Relations
[定义1] A上的二元关系R,如果R是
22
也可表示为: [ 定义 ] 集合的划分:把集合A分为若干子 集A1,A2,…,满足: (1)当i≠j时Ai∩Aj= (2) a∈A, i, 使a∈Ai(i=1,2,…) 则集合 Pr(A)={A 1 ,A 2 , … ,A n,…} 称为A的一个划分/partition。
09_划分、等价关系
例:A = {1,2,3,4} A的划分: 的划分: 的划分 S1 = {{1,2},{3},{4}} S2 = {{1},{2},{3},{4}} S3 = {{1,2,3,4}}
最大划分 最小划分
S1是S3的加细 , 是 的加细 S2是S1的加细 , S2是S3的加细 是 的加细 是 的加细
说明: 说明: 的划分, ① A 的划分, 是 A 的幂集 P(A) 的子集 最大(最细 划分: 最细)划分 ② 最大 最细 划分:{ {a}|a∈A } | ∈ 最小(最粗 划分 最小 最粗)划分:{ A } 最粗 划分:
任意元素的等价类,非空; 任意元素的等价类,非空; 不同元素的等价类,相等或不相交; 不同元素的等价类,相等或不相交; 所有元素的等价类, 所有元素的等价类,并集为 A 。 例:{ 1,4,7 } 、{2,5,8 } 、{ 3,6 }
利用非空集合A上的等价关系 , 利用非空集合 上的等价关系R, 上的等价关系 可以构造一个新集合——商集。 商集。 可以构造一个新集合 商集 定义: 定义: 是非空集合A上的等价关系 设R是非空集合 上的等价关系 是非空集合 上的等价关系, 令 A/R = { [a]R | a∈A }, ∈ 的商集。 称 A/R 为 A 关于 R 的商集。
例:A = {1,2,3,4}, , 上等价关系的数目? 问A上等价关系的数目? 上等价关系的数目 解:欲求A上等价关系的数目 欲求 上等价关系的数目 先求A的划分的数目。 先求 的划分的数目。 的划分的数目 考虑划分中划分块的类型: 考虑划分中划分块的类型: 4 = 2+2 = 1+3 = 1+1+2 = 1+1+1+1
③对于任意的<a,b>,<b,c>∈R,有 对于任意的 ∈ , a≡b(mod n), b≡c(mod n) 即存在整数k、 , 即存在整数 、h, 使a-b=k·n,b-c=h·n, , , 那么有 a-c=(a-b)+(b-c)=(k+h)·n ∴有a≡c(mod n) ∴ <a,c>∈R ∈ ∴ R是传递的 是传递的 综合① 综合①、②、③,∴ R是等价关系 是等价关系
等价类划分方法
等价类划分方法·边界值分析方法·错误推测方法·因果图方法等价类划分:是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例.该方法是一种重要的,常用的黑盒测试用例设计方法.1) 划分等价类: 等价类是指某个输入域的子集合.在该子集合中,各个输入数据对于揭露程序中的错误都是等效的.并合理地假定:测试某等价类的代表值就等于对这一类其它值的测试.因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件,就可以用少量代表性的测试数据.取得较好的测试结果.等价类划分可有两种不同的情况:有效等价类和无效等价类.有效等价类:是指对于程序的规格说明来说是合理的,有意义的输入数据构成的集合.利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能.无效等价类:与有效等价类的定义恰巧相反.设计测试用例时,要同时考虑这两种等价类.因为,软件不仅要能接收合理的数据,也要能经受意外的考验.这样的测试才能确保软件具有更高的可靠性.2)划分等价类的方法:下面给出六条确定等价类的原则.①在输入条件规定了取值范围或值的个数的情况下,则可以确立一个有效等价类和两个无效等价类.②在输入条件规定了输入值的集合或者规定了“必须如何”的条件的情况下,可确立一个有效等价类和一个无效等价类.③在输入条件是一个布尔量的情况下,可确定一个有效等价类和一个无效等价类.④在规定了输入数据的一组值(假定n个),并且程序要对每一个输入值分别处理的情况下,可确立n个有效等价类和一个无效等价类.⑤在规定了输入数据必须遵守的规则的情况下,可确立一个有效等价类(符合规则)和若干个无效等价类(从不同角度违反规则).⑥在确知已划分的等价类中各元素在程序处理中的方式不同的情况下,则应再将该等价类进一步的划分为更小的等价类.3)设计测试用例:在确立了等价类后,可建立等价类表,列出所有划分出的等价类:输入条件有效等价类无效等价类... ... ...... ... ...然后从划分出的等价类中按以下三个原则设计测试用例:①为每一个等价类规定一个唯一的编号.②设计一个新的测试用例,使其尽可能多地覆盖尚未被覆盖地有效等价类,重复这一步.直到所有的有效等价类都被覆盖为止.③设计一个新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,重复这一步.直到所有的无效等价类都被覆盖为止.边界值分析法边界值分析方法是对等价类划分方法的补充.(1)边界值分析方法的考虑:长期的测试工作经验告诉我们,大量的错误是发生在输入或输出范围的边界上,而不是发生在输入输出范围的内部.因此针对各种边界情况设计测试用例,可以查出更多的错误.使用边界值分析方法设计测试用例,首先应确定边界情况.通常输入和输出等价类的边界,就是应着重测试的边界情况.应当选取正好等于,刚刚大于或刚刚小于边界的值作为测试数据,而不是选取等价类中的典型值或任意值作为测试数据.(2)基于边界值分析方法选择测试用例的原则:1)如果输入条件规定了值的范围,则应取刚达到这个范围的边界的值,以及刚刚超越这个范围边界的值作为测试输入数据.2)如果输入条件规定了值的个数,则用最大个数,最小个数,比最小个数少一,比最大个数多一的数作为测试数据.3)根据规格说明的每个输出条件,使用前面的原则1).4)根据规格说明的每个输出条件,应用前面的原则2).5)如果程序的规格说明给出的输入域或输出域是有序集合,则应选取集合的第一个元素和最后一个元素作为测试用例.6)如果程序中使用了一个内部数据结构,则应当选择这个内部数据结构的边界上的值作为测试用例.7)分析规格说明,找出其它可能的边界条件.错误推测法错误推测法:基于经验和直觉推测程序中所有可能存在的各种错误, 从而有针对性的设计测试用例的方法.错误推测方法的基本思想: 列举出程序中所有可能有的错误和容易发生错误的特殊情况,根据他们选择测试用例. 例如, 在单元测试时曾列出的许多在模块中常见的错误. 以前产品测试中曾经发现的错误等, 这些就是经验的总结. 还有, 输入数据和输出数据为0的情况.输入表格为空格或输入表格只有一行. 这些都是容易发生错误的情况. 可选择这些情况下的例子作为测试用例.因果图方法前面介绍的等价类划分方法和边界值分析方法,都是着重考虑输入条件,但未考虑输入条件之间的联系, 相互组合等. 考虑输入条件之间的相互组合,可能会产生一些新的情况. 但要检查输入条件的组合不是一件容易的事情, 即使把所有输入条件划分成等价类,他们之间的组合情况也相当多. 因此必须考虑采用一种适合于描述对于多种条件的组合,相应产生多个动作的形式来考虑设计测试用例. 这就需要利用因果图(逻辑模型).因果图方法最终生成的就是判定表. 它适合于检查程序输入条件的各种组合情况.利用因果图生成测试用例的基本步骤:(1) 分析软件规格说明描述中, 那些是原因(即输入条件或输入条件的等价类),那些是结果(即输出条件), 并给每个原因和结果赋予一个标识符.(2) 分析软件规格说明描述中的语义.找出原因与结果之间, 原因与原因之间对应的关系. 根据这些关系,画出因果图.(3) 由于语法或环境限制, 有些原因与原因之间,原因与结果之间的组合情况不不可能出现. 为表明这些特殊情况, 在因果图上用一些记号表明约束或限制条件.(4) 把因果图转换为判定表.(5) 把判定表的每一列拿出来作为依据,设计测试用例.从因果图生成的测试用例(局部,组合关系下的)包括了所有输入数据的取TRUE与取FALSE的情况,构成的测试用例数目达到最少,且测试用例数目随输入数据数目的增加而线性地增加.除了上述几种黑盒测试的测试用例设计方法之外其他方法还包括判定表驱动分析方法、正交实验设计方法、功能图分析方法等。
等价关系
等价类与划分
设R是集合A上的等价关系,下面的定理证 明A的两个元素的等价类或是相等或是不相 交。 定理1 设R是集合A上的等价关系,下面的 命题是等价的。 ( I ) aRb ( Ii ) [a] = [b] ( iii ) [a] ∩ [b] ≠Φ
等价类与划分
集合S的划分是一族S的不相交的非空子集, 且S就是它们的并。 设R是集合S上的等价关系,则R的所有等 价类的并集就是S,且由定理1知道,这些 等价类或是相等的或是不相交的。 于是,等价类构成A的划分,因为它们将A 分成不相交的子集。
格Lattices
如果一个偏序集的每对元素都有最小上界 和最大下界,就称这个偏序集为格。 应用实例
信息流的格模型
拓扑排序Topological Sorting
与一个偏序相容的全序:包含了给定偏序 的一个全序 拓扑排序:用给定偏序构造一个相容的全 序
字典顺序Lexicographic Order
从一个集合上的偏序构造一个集合上的串 的排序。
哈斯图
表示有穷偏序集的有向图,移走所有顶点 上的环,移走由于传递性而必须出现的边; 最后,排列每条边使得它的起始点在终点 的下面,移走所有有向边上的箭头,因为 所有的边向上指向它们的终点。最后得到 的图称为哈斯图。
最小上界和最大下界
集合的最小上界:集合的一个上界,它小 于ห้องสมุดไป่ตู้有其他的上界 集合的最大下界:集合的一个下界,它大 于所有其他的下界
链(chain), 反链(antichain)
设<A,≼>为偏序集, B⊆A, 链(chain): B是A中的链⇔ ⇔ ∀ ∀ ∀x∀y( x∈B∧y∈B → x与y可比) |B|称为链的长度 反链(antichain): B是A中的反链⇔ ⇔ ∀x∀y( x∈B∧y∈B∧x≠y → x与y不可比) |B|称为反链的长度
等价关系与等价类
在数学中的应用举例
集合的划分
利用等价关系对集合进行划分, 得到互不相交的子集,这些子集 构成的集合称为原集合的一个划 分。
商集
给定集合上的等价关系,可以构 造出相应的商集。商集中的元素 是原集合中的等价类,商集上的 运算可以继承原集合的运算性质。
同余关系
在整数集中,同余关系是一种重 要的等价关系。利用同余关系可 以将整数集划分为若干个剩余类, 每个剩余类中的元素具有相同的 余数性质。
在计算机科学中的应用举例
数据压缩
在数据压缩中,利用等价关系将大量数据进行分类和归并,从而减少数据的存储空间。例如,在哈夫曼编码中,根据 字符出现的频率构造哈夫曼树,将频率相近的字符归为一类,实现数据的高效压缩。
软件测试
在软件测试中,等价类划分是一种重要的测试方法。根据输入数据的等价关系将输入域划分为若干个等价类,然后从 每个等价类中选取代表性数据进行测试,从而提高测试效率和准确性。
检查对称性
对于任意两个元素x和y,如果x与y等价,确认y与x是否也等价。
检查传递性
对于任意三个元素x、y和z,如果x与y等价且y与z等价,确认x与z 是否也等价。
等价关系的判定方法
检查自反性
确认任意元素x是否与其自身等价。
检查对称性
对于任意两个元素x和y,如果x与y等价,确认y与x是否也等价。
检查传递性
等价关系与等价类
contents
目录
• 引言 • 等价关系的定义与性质 • 等价类的定义与性质 • 等价关系与等价类的关系 • 等价关系与等价类的应用举例 • 总结与展望
contents
目录
• 引言 • 等价关系的定义与性质 • 等价类的定义与性质 • 等价关系与等价类的关系 • 等价关系与等价类的应用举例 • 总结与展望
等价关系与等价类集合与关系离散数学-文档资料
[3]R={3,7}
=[7]R
余数为3的等价类
[4]R={4}
余数为0的等价类
总结:
(1)集合中的10个元素都有一个等价类。
(2)各等价类之间或者完全相等或者不相交。
(3)所有等价类的并集就是A。
第12页
2
6
1
59
10 14
37
4
[1]R=[5]R=[9]R={1,5,9} [2]R=[6]R=[10]R=[14]R={2,6,10,14} [3]R=[7]R={3,7} [4]R={4}
整数集合上的“小于”关系 不是等价关系。
第4页
例3-10.2 集合A={1,2,3,4,5,6,7,9,10,14},R是A上的模4同 余关系,试通过关系图说明R是等价关系。
分析:R={<x,y>|x除以4与y除以4的余数相同}
<x,y>∈R x(mod 4)=y(mod 4)或x≡y(mod 4)
每个关系子图即为一个等价类,位于此子图中的元 素的等价类相同,等于该子图中的所有元素构成的 集合。
第13页
2、等价类性质
R是A上等价关系,任意x,y,z∈A
⑴同一个等价类中的元素,彼此有等价关系R。
第9页
二
元 关
性 质
系
自反 对称 传递 反对称 反自反
等价关系
有 向 图
等 价 类
商 集
划 分
第10页
二、 等价类
1、定义3-10.2 : x的等价类 R是A上的等价关系,对任何x∈A,集合[x]R称为 由x生成的R等价类,简称x的等价类: [x]R={y|y∈A∧xRy} 简化写法:y∈[x]R xRy 讨论: (1)等价类[x]R是一个集合,且[x]R A。 (2)[x]R中的元素是在等价关系R中,与x有 等价关系R的所有元素组成的集合。 (3)[x]R Φ, x∈[x]R。
等价类划分的定义
等价类划分的定义《等价类划分的定义:简单又神奇的概念》嘿,你有没有想过,在这个复杂的世界里,我们常常需要把很多东西分类,就像把水果分成苹果、香蕉、橙子那样。
其实呀,在一些更复杂的事情里,也有一种超级有趣的分类方法,这就是等价类划分。
你看啊,假如我们把人按照年龄来分,那可以有小孩、年轻人、中年人、老年人这些类。
这就有点像等价类划分的感觉了。
等价类划分呢,就是把一些看起来差不多的东西归为一类。
这可不是随随便便地归哦。
比如说,我们要测试一个新出的手机APP,这个APP是给不同年龄段、不同手机型号、不同使用习惯的人用的。
那我们可不能一个一个人、一部一部手机去测试呀,那得花多长时间啊,简直是要累死人!这时候呢,等价类划分就像一个超级英雄闪亮登场了。
我们可以把那些具有相同特性或者表现出相同行为的东西放在一起。
就像那些都用苹果手机的人,不管他们是男生还是女生,不管他们住在城市还是农村,只要是用苹果手机的,在测试这个APP的时候,就可以看作是一个等价类。
哇,这么一想,是不是感觉一下子就清晰多了呢?再打个比方,你去超市买东西。
超市里的商品琳琅满目,不过我们可以把它们划分成食品类、日用品类、服装类等等。
这和等价类划分是不是有点像呢?只不过在更专业的领域里,等价类划分更加细致和精确。
在数学里也有类似的情况。
你看那些数字,有奇数、偶数,这其实就是一种简单的等价类划分。
奇数这个等价类里,不管是1、3还是99,它们都有共同的特性,那就是除以2会有余数。
偶数呢,不管是2、4还是100,都能被2整除。
这就好比一群小伙伴,有着共同的特点,所以就被归到了一起。
等价类划分还能让我们在处理很多事情的时候更高效。
要是没有这种划分方法,那很多工作都会变得一团糟。
比如说设计一个新的网站,要考虑不同的浏览器、不同的网络速度、不同的屏幕分辨率。
如果不把这些情况进行等价类划分,那设计师可能就要忙到头发都掉光啦!你可能会问,那怎么才能确定哪些东西是属于同一个等价类呢?这就需要我们去找到那些关键的特性或者条件。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
等价类划分
商品之间的等价交换
1、价值规律的基本内容
①商品生产要遵循商品的价值量由社会必要劳动时间决定——商品的价值量
由生产商品的社会必要劳动时间决定。
②商品交换要遵循等价交换原则——以价值量为基础,实行等价交换。
2、价值规律表现形式:价格受供求关系影响围绕价值上下波动。
①价值规律的表现形式也称价值规律的实现形式和发生作用的形式。
②等价交换是商品交换的一个重要原则。
“等价”是指交换双方商品的价值都
要相等,即各自商品所消耗的社会必要劳动时间相等。
货币出现以后,商品的价格却由货币来衡量,表现为价格。
等价交换也就是要求商品的价格应该与价值相符合,因为价格由价值决定。
③在现实生活中,价格与价值经常不一致,这是由商品的供求关系的变化引
起的,使价格上涨或下跌;反过来,价格的上涨或下跌也会影响供求关系,使供求趋于平衡,从而使价格接近价值。
④由于价格与供求之间存在着相互制约的关系,这样就会产生以下情况:
第一:价格的上涨和下跌,都不会距离价值太远,它总是围绕价值上下波动。
第二:从一个较长时间来看,从全社会来看,商品的平均价格还是与它的价值相一致。
⑤价格围绕价值上下波动表明:社会必要劳动时间决定价值量这一内容,始
终作为一种趋势,作为一个规律在贯彻着。
所以,价值规律的表现形式不仅不违背规律,反而正是价值规律的表现形式,而且是唯一的表现形式。
价值规律基本内容和表现形式是一致的,价格围绕价值上下波动就是价值规律基本内容的外在表现,价格和价值相符的本质,在实际交换中只能通过价格围绕价值波动这种形式才能实现。
价格最终还是由价值决定。
等价类划分
等价类划分法是一种典型的、重要的黑盒测试方法,它将程序所有可能的输入数据(有效的和无效的)划分成若干个等价类。
然后从每个部分中选取具有代表性的数据当做测试用例进行合理的分类,测试用例由有效等价类和无效等价类的代表组成,从而保证测试用例具有完整性和代表性。
利用这一方法设计测试用例可以不考虑程序的内部结构,以需求规格说明书为依据,选择适当的典型子集,认真分析和推敲说明书的各项需求,特别是功能需求,尽可能多地发现错误。
等价类划分法是一种系统性的确定要输入的测试条件的方法。
由于等价类是在需求规格说明书的基础上进
行划分的,并且等价类划分不仅可以用来确定测试用例中的数据的输入输出的精确取值范围,也可以用来准备中间值、状态和与时间相关的数据以及接口参数等,所以等价类可以用在系统测试、集成测试和组件测试中,在有明确的条件和限制的情况下,利用等价类划分技术可以设计出完备的测试用例。
这种方法可以减少设计一些不必要的测试用例,因为这种测试用例一般使用相同的等价类数据,从而使测试对象得到同样的反映行为。
对于等价类我们从以下几个方面讨论它的划分方法。
等价类划分的方法分为两个主要的步骤,划分等价类型和设计测试用例。
有效等价类划分
有效等价类指对于程序规格说明来说,是合理的、有意义的输入数据构成的集合。
利用有效等价类可以检验程序是否实现了规格说明预先规定的功能和性能。
有效等价类可以是一个,也可以是多个,根据系统的输入域划分若干部分,然后从每个部分中选取少数有代表性数据当做数据测试的测试用例,等价类是输入域的集合。
以下是对有效等价类数据集的一些例子。
终端用户输入的命令与最终用户交互的系统提示接受相关的用户文件的名称提供初始化值和边界等提供格式化输出数据的命令在图形模式(比如鼠标点击时)提供的数据失败时显示的回应消息
无效等价类划分
无效等价类和有效等价类相反,无效等价类是指对于软件规格说明而言,没有意义的、不合理的输入数据集合。
利用无效等价类,可以找出程序异常说明情况,检查程序的功能和性能的实现是否有不符合规格说明要求的地方。
以下是无效等价类数据集的一些例子。
在一个不正确的地方提供适当的值。
验证边界值验证外部边界的值用户输入的命令最终用户与系统交互的提示验证与边界和外部边界值的数值数据
等价类划分的方法有
按区间划分。
按数值划分。
按数值集合划分。
按限制条件或规划划分。
按处理方式划分。
等价类划分的原则如下:在输入条件规定的取值范围或值的个数的情况下,可以确定一个有效等价类和两个无效等价类。
在规定了输入数据的一组值中(假定有n个值),并且程序要对每个输入值分别处理的情况下,可以确定n个有效等价类和一个无效等价类。
在规定输入数据必须遵守的规则的情况下,可以确定一个有效等价类和若干个无效等价类。
在输入条件规定了输入值的集合或规定了“必须如何”的条件下,可以确定一个有效等价类和一个无效等价类。
在确定已划分的等价类中各元素在程序处理中的方式不同的情况下,则应将该等价类进一步地划分为更小的等价类。
等价类表的建立等价类表的建立。
测试用例可按下列步骤来确定:
1)在分析需求规格说明的基础上划分等价类,列出等价类表,为每一个等价类规定一个唯一的编号。
2)将程序可能的输入数据分成若干个子集,从每个子集中选取一个有代表性的数据作为测试用例。
等价类是某个输入域的子集,在该子集中的每个输入数据的作用都是等效的。
3)设计新的测试用例,使其尽可能多地覆盖未覆盖的有效等价类,按照这一步骤重复进行,直到所有的有效等价类都被覆盖为止。
4)设计新的测试用例,使其仅覆盖一个尚未被覆盖的无效等价类,按照这一步骤重复进行,直到所有的无效等价类都被覆盖为止。