|
何为等价类?"某个输入域的集合,在这个集合中每个输入条件都是等效的,如果其中一个的输入不能导致问题发生,那么集合中其它输入条件进行测试也不可能发现错误。""等价类是指某个输入的域子集.在这个集合(等价类)中每个输入数据对于发现程序中的错误都是等效的""将程序可能的输入数据分成若干个子集,从每个子集选取一个代表性的数据作为测试用例,等价类是某个输入域的子集,在该子集中每个输入数据的作用是等效的。"
上一段是先贤们给几种定义,然也?非也?若果真如此,测试同一等价类内的几个边界值岂非毫无意义?因为他们是等效的,一个就够了啊!边界值(上点.离点,内点)是容易出错的地方,是测试中必须涉及到的,两个上点和内点在同一个等价类里,但是绝对无法保证它们一个不出问题,别的就都不出问题!
举个例子,输入3-8的整数,划分的有效等价类只有一个(3-8的整数),而实际测试中在这个有效等价类中绝不能取一个就把别的都代表了,你至少要取三个数,两个上点(3和8)一个内点(4,5,6,7任意一个都行).
综上所述,绝不能从等价类中选一个就把其它数据都等效了.边界值和等价类一定要紧密结合.虽然以前设计用例也是本能的把它们结合在一起了,但是今天突然发现等价类竟是如此的定义,真的容易让人误解啊! |
|