我正在为 ISTQB 考试学习,但无法解决这个问题:
if (x > y)
print (x)
else if (x < y)
print (y)
else
print (x,y)
据说有3个决策和5个分支。3和5?当第一个“If”为假(然后“else”适用)以及“else if”为假时,我是否应该考虑一个分支,当“else”再次适用时?
我正在为 ISTQB 考试学习,但无法解决这个问题:
if (x > y)
print (x)
else if (x < y)
print (y)
else
print (x,y)
据说有3个决策和5个分支。3和5?当第一个“If”为假(然后“else”适用)以及“else if”为假时,我是否应该考虑一个分支,当“else”再次适用时?
是的,总共5个分支。
if
/ \
false true
else
if
/ \
false true
else
|
Branch Coverage reveals, if all branches were executed. (For example, an if-instruction has two branches, the then-branch and the else-branch.)
在您的代码中,三个决策和 5 个分支。stmt 1 如果两个分支为真或假 stmt 3 else 如果两个分支为真或假 stmt 5 else 一个分支
所以传递像 x = 2,1,2 y = 1,2,2 这样的值
这样就涵盖了所有三个决策和 5 个分支。
希望这可以帮助你