【软件测试】Exercise Section 2.3 #7
7. Use the following method printPrimes() for questions a–d.
–基于Junit及Eclemma(jacoco)实现一个主路径覆盖的测试。
solution:
a) control flow graph
b) test cases: t1 = (n = 3), t2 = ( n = 5).Design a simple fault that t2 would be more likely to discover than t1.
fault:
changed to :
c) test case that jump to the for loop from the start of 'while' without the while loop body
test case: n = 1
d)enumerate TR for NC, EC, PPC
NC: TR = {1,2,3,4,5,6,7,8,9,10,11,12,13}
EC: TR = {(1,2),(2,3),(2,10),(3,4),(4,5),(4,8),(5,6),(5,7),(7,4),(6,8),(8,9),(8,10),(9,10),(10,11),(11,12),(11,13),(12,11)}
PPC: TR = {[1,2,10,11,13], [1,2,3,4,5,7], [1,2,3,4,5,6,8,9,10,11,12], [1,2,3,4,5,6,8,9,10,11,13], [1,2,3,4,5,6,8,10,11,12], [1,2,3,4,5,6,8,10,11,13], [11,12,11], [12,11,12], [4,5,7,4], [5,7,4,5], [7,4,5,7]}
代码实现(截图):