Must know something of everything and everything of something!
代码覆盖率分析
上一篇 /
下一篇 2007-04-24 11:01:28
/ 个人分类:Testing
代码覆盖率分析Code Coverage Analysis51Testing软件测试网
V3cJ.m`i"h2@#T|"m
51Testing软件测试网w?s3GaJl1. 语句覆盖 Statement Coverage,SC51Testing软件测试网Y5X E#~4^.V9P*CM6w
语句覆盖是指通过选择足够的测试用例,使得运行这些测试用例时,被测程序的每个语句至少被执行一次。51Testing软件测试网(z.im7zd([
51Testing软件测试网2r
VjY$r&Vyr%Z2. 判定覆盖 Decision Coverage,DC51Testing软件测试网R
T-|_
y
}Nv
是指通过足够的测试用例,使得程序中的每一个判定至少都获得一次“真值”和“假值”的机会,或者说使得程序中的每一个分支都至少通过一次。51Testing软件测试网&L,t"l xk%?
51Testing软件测试网8Itn ~4F8T[ D3. 条件覆盖 Condition Coverage,CC51Testing软件测试网@8]g*CYju!L
对于每个判定中所包含的若干个条件,应设计足够多的测试用例,使得判定中的每个条件都至少取到一次“真值”和“假值”的机会,也就是说判定中的每个条件的所有可能结果至少出现一次。
/xS&{-VTw ~
P051Testing软件测试网u2@D~"EyI4. 判定/条件覆盖 Decision/Condition Coverage,CDC51Testing软件测试网L kg~
n;{w
通过设计足够多的测试用例,使得运行这些测试用例时,判定中的每个条件的所有可能结果至少出现一次,并且每个判定本身的所有可能结果也至少出现一次。51Testing软件测试网JZj/@&j"]O[7t+]
51Testing软件测试网s"ieS)B#|:crue`5. 条件组合覆盖 Multiple Condition Coverage,MCC51Testing软件测试网8\yT-@OYa/D~
通过设计足够多的测试用例,使得运行这些测试用例时,每个判定中条件结果的所有可能组合至少出现一次。51Testing软件测试网+As
p'pM)CG N
51Testing软件测试网G `F$r9l6. 修正的判定/条件覆盖 Modified Decision/Condition Coverage,MCDC
q;Hvx3et0 这个覆盖度量标准需要足够的测试用例来确定各个条件能够影响到包含的判定的结果。它要求满足两个条件:a.每一个程序模块的入口和出口都要考虑至少被调用一次,每个程序的判定到所有可能的结果至少转换一次;b.程序的判定被分解为通过逻辑操作符连接的布尔条件,每个条件对于判定的结果值是独立的。
I7^2hz
kq)k0h_&H n'F{"Y;nh07. 路径覆盖 Path Coverage,PC
,cCd+J+}tI0 通过设计足够多的测试用例,使得运行这些测试用例时,程序的每条可能执行到的路径都至少被经过一次(如果程序中有环路,则要求每条环路至少经过一次)。
j"}$z/K/T1uv0