【软件工程大题】白盒测试

给出一个简单的测试样例,然后再进行白盒测试的讲解

if A and B           
	then action1     
if C or D            
	then action2     

1.语句覆盖

每个语句执行一次
也就是,样例中的每个语句执行一次,至于ABCD取值,要满足IF条件,让四个语句都执行一次
A and B -> T ⇒ A=T B=T
C or D -> T ⇒ C=T (也可以是C=F,D=T)
test= A=T B=T C=T


2.判定覆盖

什么是判定?
A and B ,这个整体就是一个判定

每个判定真假至少一次

A and B =T ->A=T B=T ①
A and B =F -> A=T B=F ②
C or D = F -> C=T D=T ③
C or D = F -> C=F D=F ④

测试样例就是每种情况都覆盖到一次
test1: A=T B=T C=T D= F ⇒ ① ③
test2:A=T B=F C=F D= F ⇒ ② ④


3.条件覆盖

什么是判定?
A ,B,C,D ,各是一个条件

让每个条件取一次真和假

A T F
B T F
C T F
D T F

4.判定-条件覆盖

既满足判定,又满足条件覆盖,即满足①-⑥

test1: A=T B=T C=T D= T ⇒ ① ③ ⑤
test2:A=F B=F C=F D= F ⇒ ② ④ ⑥

注意:是满足这种情况,所以不用看之前的结果,满足条件即可,也就是说 A=F B=F满足A and B 为假这种情况


5.组合覆盖

顾名思义,把一个判定中的各种条件组合起来.
注意:A和B组合,C和D组合

A B C D
test1: T T T T
test2: T F T F
test3: F T F T
test4: F F F F

6. 路径覆盖

例图如下:
【软件工程大题】白盒测试_第1张图片
答案如下:
画一个树状图,包含所有的判定情况,然后让各个测试样例满足每一种路径的情况.

【软件工程大题】白盒测试_第2张图片
test1: x=4,z=9,y=6
rest2: x=5,z=9,y=1
test3: x=2,z=9,y=6
test4: x=2 z=9,y =1

你可能感兴趣的:(软件工程导论,白盒测试,软件工程)