程序测试 如选择 A=2,B=0X=4 A=1,B=1,X=1 则可执行的路径为 a bed a b d 从这组数据来看,它注意了4个条件 A>1B=0,A=2和X>1的复盖。我们称这种注重判 断的复盖为“条件复盖
程序测试 ◼ 如选择 ◼ A=2,B=0,X=4 ◼ A=1,B=1,X=1 ◼ 则可执行的路径为 ◼ a c b e d ◼ a b d ◼ 从这组数据来看,它注意了4个条件 A>1,B=0,A=2和X>1的复盖。我们称这种注重判 断的复盖为“条件复盖
程序测试 以上这些数据虽然均达到一些测试目的,且各有侧重,但是都是 不充分的。 如从条件出发,用组合的办法使各个条件都能执行到,则我们可 以写出以下8种条件组合: 1)A>1B=0 2)A>1B<>0(<>是不等号) 3)A<=1B=0 4)A<=1B<>0 5)A=2X>1 6)A=2X<=1 7)A<>2X>1 8)A<>2X<=1
程序测试 ◼ 以上这些数据虽然均达到一些测试目的,且各有侧重,但是都是 不充分的。 ◼ 如从条件出发,用组合的办法使各个条件都能执行到,则我们可 以写出以下8种条件组合: ◼ 1)A>1,B=0 ◼ 2)A>1,B<>0;(<>是不等号) ◼ 3)A<=1,B=0 ◼ 4)A<=1,B<>0 ◼ 5)A=2,X>1 ◼ 6)A=2,X<=1 ◼ 7)A<>2,X>1 ◼ 8)A<>2,X<=1
程序测试 ■根据这8种条件组合,又可以优化组成如下4组 数据: A=2B=0X=4 A=2B=1,X=1 A=1B=0X=2 A=1,B=1,X=1 它们都能使各种条件均能出现一次。虽然这个组合 方法比较方便,逻辑也很清楚,且对执行条件来说 还是比较全面的,但是仍然又未走遍的路径,如aC b d
程序测试 ◼ 根据这8种条件组合,又可以优化组成如下4组 数据: ◼ A=2,B=0,X=4 ◼ A=2,B=1,X=1 ◼ A=1,B=0,X=2 ◼ A=1,B=1,X=1 ◼ 它们都能使各种条件均能出现一次。虽然这个组合 方法比较方便,逻辑也很清楚,且对执行条件来说 还是比较全面的,但是仍然又未走遍的路径,如a c b d
程序测试 在测试时,还 要注意到计算 B=0 机执行多个条 件的特点,即 X: =X/A 它必须把多个 条件分解为简2 单判别才能执 行,如上述例 >1 子可分解为右 图。 X:=X+1
程序测试 ◼ 在测试时,还 要注意到计算 机执行多个条 件的特点,即 它必须把多个 条件分解为简 单判别才能执 行,如上述例 子可分解为右 图
例子2 某个 TRIANGLE程序,用3个整数表示 个三角形的3条边长。当输入3个整数后, 该程序输出一个结果,指出这三角形是 等腰,等边,还是不等边三角形
例子2 ◼ 某个TRIANGLE程序,用3个整数表示一 个三角形的3条边长。当输入3个整数后, 该程序输出一个结果,指出这三角形是 等腰,等边,还是不等边三角形