上一篇博文中,笔者主要复习了黑盒测试法中等价划分法的相关理论知识,这次主要是根据这种方法实际写一下测试用例;
取题目自《软件测试的艺术》第四章,题目如下:
作为一个例子,假设我们正在为FORTRAN语言的一个子集开发编译器,我们希望对D工MENS工ON语句的语法检查进行测试。该语句的规比说明加下所示(这不是FORTRAN语言中的完整DIMENSION语句,我们对其讲行了适当的剪裁,使其适合作为教科书的样例。不要被其误导,以为测试实际的程序就像测试本书中的样例一样容易)。在规格说明中,斜体字中的项是在实际语句中必须被特定实体取代的语法单元,使用括弧代表可选项,省略号代表前面的项可能会连续重复出现多次。
DIMENSION语向用来定义数组的大小。
DIMENSION语向的格式如下:DIMENSION ad[ , ad]...
其中ad是数组描述符,其格式如下:n(d[ ,d]...)
其中n是数组的符号名,d是数组的维说明符。符号名可以由1一6个字母或数字组成,其中首字符必须是字母。一个数组最少有1个维,最多有7个维。维说明符的格式如下:[1b:]ub,其中lb与ub分别是维的下边界和上边界。边界可以是-65534~65535之间的一个常数,或是一个整型变量名(但不能是数组元素名)。如果未指定lb,则其默认值为1。ub的值必须大于或等于lb。如果指定了lb,则其值可为负数、零或正数。就全部语句而言,DIMENSION语句可写成连续多行。
解析:以下为笔者个人解答,如有错误或缺漏,欢迎指正!
输入条件 | 有效等价类 | 无效等价类 |
---|---|---|
数组描述符数量 | 1个(1),多于1个(2) | 0个(3) |
数组符号名长度 | 1~6个字母或数字(4) | 0个(5),大于6个(6) |
数组符号名字符类型 | 只含字母(7),只含数字(8),仅字母和数字组合(9) | 其他字符(10) |
数组符号名首字母类型 | 字母(11) | 其他字符(12) |
是否有数组维说明符 | 是(13),否(14) | |
数组维度数量 | 1~7个维(15) | 0个(16),大于7个(17) |
边界常数值 | -65534~65535(18) | <-65534(19),>65535(20) |
上边界是 | 常数(21),整型变量(22) | 数组元素名(23),其他(24) |
下边界是 | 常数(25),整型变量(26) | 数组元素名(27),其他(28) |
是否指定下边界 | 是(29),否(30) | |
未指定下边界时其值 | 默认值为1(31) | 其他(32) |
上边界对比下边界 | >(33),=(34) | <(35) |
指定下边界时其值 | 负数(36),零(37),正数(38) | 其他(39) |
是否连续多行语句 | 是(40),否(41) | |