软件测试作业三主路径覆盖测试
Primes.java
package findPrimes;
public class Primes {
private final static int MAXPRIMES = 100;
private boolean isDvisible(int a, int b) {
if ((b % a) == 0) {
return true;
}
return false;
}
public String printPrimes(int n) {
String prime = "";
int curPrime; //Value currently considered for primeness
int numPrimes; // Number of primes found so far;
boolean isPrime; //Is curPrime prime?
int[] primes = new int[MAXPRIMES];// The list of primes.
// Initialize 2 into the list of primes.
primes[0] = 2;
numPrimes = 1;
curPrime = 2;
while(numPrimes < n) {
curPrime++; // next number to consider...
isPrime = true;
for(int i = 0; i <= numPrimes; i++ ) {
//for each previous prime.
if(isDvisible(primes[i],curPrime)) {
//Found a divisor, curPrime is not prime.
isPrime = false;
break;
}
}
if(isPrime) {
// save it!
primes[numPrimes] = curPrime;
numPrimes++;
}
}// End while
// print all the primes out
for(int i = 0; i < numPrimes; i++) {
//System.out.println("Prime: " + primes[i] );
Integer inte = new Integer(primes[i]);
prime += inte.toString();
}
return prime;
}// End printPrimes.
}
Test case
PrimePathConverage
package findPrimes;
import static org.junit.Assert. *;
import org.junit.Before;
import org.junit.Test;
public class PrimePathConverage {
private Primes primes;
@Before
public void setUp() {
primes = new Primes();
}
@Test
public void test1() {
// [1,2,9,10,12]
assertEquals("", primes.printPrimes(1));
}
@Test
public void test2() {
assertEquals("23", primes.printPrimes(3));
}
}