白盒测试技术——循环覆盖测试
-
1 电子教材
-
2 PPT
上一节
下一节
前面的测试用例设计是针对程序逻辑的,它主要是建立在分支的基础上,我们知道在程序中还使用另一种控制结构即循环语句。
循环语句可以分为以下4种:简单循环、串接循环、嵌套循环和不规则循环。下面我们来学习对这四种循环的测试。
对于如图17-2所示的两种简单循环,可以使用下面的方法来设计测试用例,其中n是允许通过循环的最大次数。

图17-2 两种简单循环
Ø 整个跳过循环。
Ø 只有一次通过循环。
Ø 两次通过循环。
Ø m次通过循环,其中m<n。
Ø n-1,n次通过循环。
如果将简单循环的测试方法用于嵌套循环(图17-3),测试数可能就会随嵌套层数成几何级增加,这会导致不符合实际的测试数目,下面是减少测试数的过程:

图17-3 嵌套循环
(1)从最内层循环开始,将其他循环设置为最小值。
(2)对最内层循环使用简单循环,而使外层循环的循环计数最小,并为测试范围外的值或已经被排除的值增加其他测试。
(3)由内向外构造下一个循环的测试,设置其他的外层循环为最小值,并使其他的嵌套循环为“典型”值。
(4)继续,直到测试完所有的循环。
如果串接循环(图17-4)的的循环都彼此独立,可以使用简单循环的策略测试。但是如果两个循环串接起来,并且第一个循环是第二个循环的初始值,则这两个循环并不是独立的。如果循环不独立,则推荐使用嵌套循环的方法进行测试。
尽量重新设计成结构化的程序结构后再进行测试(图17-5)。

图17-4 串接循环图 图17-5 不规则循环


