白盒测试之基本路径测试法
白盒
1J*{\`3{wt0 其中运用最为广泛的是基本路径测试法。51Testing软件测试网'f#_[ [yZ6G
2|*Ki7d`;ce0
设计出的测试用例要保证在测试中程序的每个可执行语句至少执行一次。
#`0z0U b%k*y!N p051Testing软件测试网 ODlR(in%g I!x)}? q.nIh
RS0
4. 准备测试用例:确保基本路径集中的每一条路径的执行。51Testing软件测试网L%H@u(J;h+a5d`)j
;c2F!SFs2EPNN0 工具方法:
SE:U:E#Ebf+_051Testing软件测试网8}Y0{U;\图形矩阵:是在基本路径测试中起辅助作用的软件工具,利用它可以实现自动地确定一个基本路径集。
lZA,A2U {D09AT~n]OQg0 程序的控制流图:描述程序控制流的一种图示方法。51Testing软件测试网*G's9Yn#|D%w9TQ.S
51Testing软件测试网/tf2r0dd8n%L$|\x圆圈称为控制流图的一个结点,表示一个或多个无分支的语句或源程序语句51Testing软件测试网kS(|"uK8tv
|T8P M+e^051Testing软件测试网1Jh4c.P*|H流图只有二种图形符号:51Testing软件测试网C'W9dD"E6[[!o
51Testing软件测试网}l2e!DD{i4W图中的每一个圆称为流图的结点,代表一条或多条语句。51Testing软件测试网;khe`s PZ
51Testing软件测试网 OI._o)LBTMs1DK流图中的箭头称为边或连接,代表控制流51Testing软件测试网eGm-K h:aGsi
51Testing软件测试网}Cqs'~){任何过程设计都要被翻译成控制流图。
6XI }8n3b]0.a/[[MY ino0
在将程序流程图简化成控制流图时,应注意:
4a-F%E&rV` Xe-JW051Testing软件测试网_}`.Af g~6en 在选择或多分支结构中,分支的汇聚处应有一个汇聚结点。
!gpZ4~-P&G"dW7[00g U`*I[ww0 n 边和结点圈定的区域叫做区域,当对区域计数时,图形外的区域也应记为一个区域。
,]i({FL X9d X6mn0WN d)\S;S'^f%D0 如下页图所示51Testing软件测试网?:V1vrw ?+d
51Testing软件测试网lO9o G hijX;rI
n 如果判断中的条件表达式是由一个或多个逻辑运算符 (OR, AND, NAND, NOR) 连接的复合条件表达式,则需要改为一系列只有单条件的嵌套的判断。
TB&@)ue9s*gj051Testing软件测试网*^[Uu4kG P例如:
HnW}~0\0y-gXxfH0 1 if a or b51Testing软件测试网%y3v Y0Ju T$@@!B
51Testing软件测试网 {cf@2Cv6s2 x
?._oo(\]_051Testing软件测试网)J+dgo]3 else
z/GN3]"d-h9m-y2?N0-~7pY$w+~$R ^(@7`:J0 4 y51Testing软件测试网TD||R:KNy'^/M
51Testing软件测试网5l%P%d+Tx对应的逻辑为:
W]W0H${ki051Testing软件测试网Pz3o.Hne rl
51Testing软件测试网&y yumI独立路径:至少沿一条新的边移动的路径51Testing软件测试网QY0a8Kreo'~
51Testing软件测试网w;b{Z~m2z`e
o 第一步:画出控制流图
#ERU.b}@051Testing软件测试网dcZBf-d流程图用来描述程序控制结构。可将流程图映射到一个相应的流图(假设流程图的菱形决定框中不包含复合条件)。在流图中,每一个圆,称为流图的结点,代表一个或多个语句。一个处理方框序列和一个菱形决测框可被映射为一个结点,流图中的箭头,称为边或连接,代表控制流,类似于流程图中的箭头。一条边必须终止于一个结点,即使该结点并不代表任何语句(例如:if-else-then结构)。由边和结点限定的范围称为区域。计算区域时应包括图外部的范围。
/_2\+TG8mmG V051Testing软件测试网,c[F*Y!XF}K
51Testing软件测试网?9Y} K-`5d K0g画出其程序流程图和对应的控制流图如下
H&[p |D%_03qN'ei ~mgH0'HnX0KD!ag0 o 第二步:计算圈复杂度
\qZ?@ Jk0