第一个例子是对计算器进行测试。

假设让你负责一个计算器小程序的测试工作,如何着手呢?假设先测试其加法运算功能,在字长为 32 位的计算机上运行,若随意取 2 个整数进行相加,那么测试数据的最大可能数目为 232x232=264。如果测试一组数据需要 1 毫秒,一天工作 24 小时,一年工作 365 天,那么完成所有测试大概需要 5 亿年。还有减法、乘法、除法、其他算法,简直可以无穷无尽,测试到天荒地老。所以我们得出了一个软件测试的原则----穷尽测试是不可能的。

为了解决这个难题,又保证我们设计出来的测试用例具有完整性和代表性,我们引入等价类划分法,它将不能穷举的测试过程进行区域划分,减少测试的数量,从而使测试过程合理化。

什么是等价,每个部分选取少数代表作为测试用例。分为两种:第一种是有效等价类,检验程序是否满足需求规格说明书的功能和性能。第二种是无效等价类,可以检验程序的异常处理情况。

eg:60<=x<=100 一个有效等价类 :60<=x<=100 两个无效等价类 :小于60 ,大于100

 等价类-注册界面案例

 输入条件有三个:用户名、密码、确认密码

用户有效等价类:1、3~12位,首字母为字母或者数字、4种字符或组合

       无效等价类:1、少于3位或多于12位,首字母不是字母也不是数字、还有4种字符以外。

密码有效等价类:1、6~20位   2、4种字符或组合 

       无效等价类:1、少于6位  多于20位  2、还有4种字符以外

确认密码有效等价类:1、与密码相同 

               无效等价类:1、与密码不同   2、大小写不同

第二步就是列出组合情况,得出等价类组合表

用户名正确、密码正确、确认密码正确

用户名无效、密码正确、确认密码正确

用户名正确、密码无效、确认密码正确

用户名正确、密码正确、确认密码无效

 

然后是预期结果:

注册成功

提示用户名错误

提示密码错误

提示确认密码错误

第二个案例是判断三角形形状案例:程序要求:输入三个整数 a、b、c 分别作为三角形的三边长度,通过三条边长度来判断三角形的类型分别为:一般三角形、等腰三角形或等边三角形,并产生对应的输出。请运用用等价类划分法来设计该题的测试用例。

 

显示需求:整数、三个数、正数

隐式需求:两边之和大于第三边、三边均不相等、两边相等但不等于第三边、三边相等

输出值的等价类为:不构成三角形、一般三角形、等腰三角形、等边三角形

 

posted on 2024-01-01 17:27  夜的第七章i  阅读(83)  评论(0编辑  收藏  举报