ISTQB-Whitebox测试:声明和分支覆盖的练习

时间:2015-09-19 08:37:56

标签: pseudocode

我很有兴趣了解Statement Coverage and Branch(Decision coverage)。我从互联网上学习过,但我不确定我是否能以最好的方式理解。

我解决了下面的练习,如果我以正确的方式解决,请你告诉我吗?

例1:

Consider the following pseudo code:     

1.  Begin
2.  Read Gender
3.  __Print “Dear”
4.  If  Gender = ‘female’
5.  Print (“Ms”)
6.  Else
7.  _Print (“Mr”)
8.  Endif 
9.  End 

需要多少个测试用例才能达到100% 决定报道?

A) 1
B) 2
C) 3
D) 4

我认为对于上面的例子,答案是2 ,但我不确定。

我这样做:     分支覆盖范围:它涵盖了真假条件。

TC1:  Read Gender==Female, so is True, it’s cover lines: 1,2,3,3,5 and 9

TC2: Read Gender !=Female, so is False, it’s cover lines: 1,2,3,4,6,7,8 and 9
  

因此,要覆盖分支覆盖范围,需要2个测试用例。

例2:

Consider the following pseudo code:     

 1.Begin 
 2.Input X, Y
 3.If X > Y
 4. __Print (X, 'is greater than', Y)
 5. Else 
 6. __Print (Y, is greater than or equal to', X)
 7. Endlf 
 8. End

保证所需的最小测试用例数是多少 100%的声明覆盖率和100%的决策覆盖率?

正确答案的数量:1

A) Statement coverage = 3, Decision coverage = 3
B) Statement coverage = 2, Decision coverage = 2
C) Statement coverage = 1, Decision coverage = 2
D) Statement coverage = 2, Decision coverage = 1

我认为答案是:声明范围= 2,决策/分支覆盖范围= 2

100%报表范围:

TC1: X=5 and Y=4, it is true and will print the text from line 4

TC2: X=4 and Y=5,  is false and will print the text from line 6

因此,Statement Coverage为2.这样就涵盖了所有行。

100%分支覆盖率:

我认为需要2个TC来覆盖分支测试,并且可以使用与Statement覆盖相同的TC。 所以,Branch也是2。

我正确行事?

谢谢

1 个答案:

答案 0 :(得分:0)

1)下面是一个图表,可以更轻松地查看运行路径: Gender question

因为您需要同时选择条件/问题 - 正确的答案是2。

2)对于第二个问题,该图表是: Graph for x,y problem

与上一个问题一样,DC为2,语句覆盖率= 2(你需要通过右分支和左分支来覆盖所有语句)

你确实在核心地回答了他们。