1.定义
  是把所有可能的输入数据,即程序的输入域划分成若干部分(子集),然后从每一个子集中选取少数具有代表性的数据作为测试用例。该方法是一种重要的,常用的黑盒测试用例设计方法。
  2.划分等价类
  等价类是指某个输入域的子集合。在该子集合中,各个输入数据对于揭露程序中的错误都是等效的,并合理地假定:测试某等价类的代表值等于对这一类其它值的 测试,因此,可以把全部输入数据合理划分为若干等价类,在每一个等价类中取一个数据作为测试的输入条件可以用少量代表性的测试数据取得较好的测试结果。 等价类划分可有两种不同的情况:有效等价类和无效等价类。
  1)有效等价类
  是指对于程序的规格说明来说是合理的、有意义的输入数据构成的集合。利用有效等价类可检验程序是否实现了规格说明中所规定的功能和性能。
  2)无效等价类
  与有效等价类的定义恰巧相反。无效等价类指对程序的规格说明是不合理的或无意义的输入数据所构成的集合。对于具体的问题,无效等价类至少应有一个,也可能 有多个。 设计测试用例时,要同时考虑这两种等价类。因为软件不仅要能接收合理的数据,也要能经受意外的考验,这样的测试才能确保软件具有更高的可靠性。
  3.划分等价类的标准:
  1)完备测试、避免冗余;
  2)划分等价类重要的是:集合的划分,划分为互不相交的一组子集,而子集的并是整个集合;
  3)并是整个集合:完备性;
  4.划分等价类的原则
  1)对值的个数的限制
  描述的是允许数值的范围,可以创建一个有效等价类和两个无效等价类;
  描述的是离散的数字[1,5,,9],每个值都做为一个有效等价类,无效等价类少于或多于有效等价类个数, 可确定一个有效等价类和一个无效等价类。

  2) 在规定了输入数据的一组值(假定n个), 可确立n个有效等价类和一个无效等价类。
  3) 一组值的集合,输入数据规定的是一组值 (假定n个),并且软件对每个输入值都一样的处理,可确立一个有效等价类和一个无效等价类

  有效:任意一个
  1) 为每一个等价类规定一个的编号;
  2)使其尽可能多地覆盖尚未被覆盖地有效等价类
  3) 设计一个新的测试用例,重复这一步,直到所有的无效等价类都被覆盖为止。
  5.案例分析

  等价类划分表格模型及案例分析