码迷,mamicode.com
首页 > 其他好文 > 详细

软件测试第三次作业junit和Eclemma的使用

时间:2017-03-13 13:03:37      阅读:343      评论:0      收藏:0      [点我收藏+]

标签:log   软件测试   ima   family   sys   equals   height   节点   void   

 

 

技术分享

 

 技术分享

 

1.

 技术分享

2.将第20

for(int i = 0; i<=numPrimes-1;i++)

改为

for(int i = 0; i<numPrimes-1;i++)

3.n=2

4.节点覆盖:

[0,1,2,3,5,3,4,6,7,8,9,10,11]

边覆盖

[0,1,2,3,5,3,4,6,7,8,9,10,9,10,11]

[0,1,2,3,4,7,1,2,3,4,7,8,9,10,11]

主路径覆盖:

[0,1,2,3,5,3,5,3,4,6,7,1,2,3,4,7,1,2,3,4,6,7,1,2,3,4,6,7,8,9,10,9,10,11]

[0,1,2,3,4,6,7,8,9,10,11]

[0,1,2,3,4,7,8,9,10,11]

5.主路进测试junitEclemma

(一)修改部分程序,方便测试

修改前:

package hw3;

 

public class hw3code {

private static void printPrimes(int n){

int curPrime;

int numPrimes;

boolean isPrime;

int MAXPRIMES = 100;

int [] Primes = new int[MAXPRIMES];

Primes[0] = 2;

numPrimes = 1;

curPrime = 2;

while(numPrimes<n){

curPrime++;

isPrime = true;

for(int i = 0; i<=numPrimes-1;i++){

if(isDivisible(Primes[i],curPrime))

{

isPrime = false;

break;

}

}

if(isPrime)

{

Primes[numPrimes] = curPrime;

numPrimes++;

}

}

for(int i = 0; i<=numPrimes-1;i++)

{

System.out.println("Prime:"+Primes[i]);

}

 

}

static boolean isDivisible(int x, int y){

int a = y/x;

double b = (double)y/(double)x;

// System.out.println(a);

// System.out.println(b);

if(b-a == 0){

return true;

}

else{

return false;

}

}

}

修改后

package hw3;

import java.util.Arrays;

public class hw3change {

static int[] printPrimes(int n){

int curPrime;

int numPrimes;

boolean isPrime;

int [] Primes = new int[n];

Primes[0] = 2;

numPrimes = 1;

curPrime = 2;

while(numPrimes<n){

curPrime++;

isPrime = true;

for(int i = 0; i<=numPrimes-1;i++){

if(isDivisible(Primes[i],curPrime))

{

isPrime = false;

break;

}

}

if(isPrime)

{

Primes[numPrimes] = curPrime;

numPrimes++;

}

}

for(int i = 0; i<=numPrimes-1;i++)

{

System.out.println("Prime:"+Primes[i]);

}

return Primes;

 

}

static boolean isDivisible(int x, int y){

int a = y/x;

double b = (double)y/(double)x;

// System.out.println(a);

// System.out.println(b);

if(b-a == 0){

return true;

}

else{

return false;

}

}

 

 

}

(二)确定测试路径对应的n

其中path1n=5

Path2 n = 2

Path3 在实际上不可能发生;

所以测试程序为

package hw3;

 

import static org.junit.Assert.*;

 

import org.junit.Test;

 

public class hw3changeTest {

hw3change pri = new hw3change();

   

@Test

public void testprimepath2() {

int right[] = {2,3};

assertArrayEquals(right,pri.printPrimes(2));

}

@Test

public void testprimepath1() {

int right[] = {2,3,5,7,11};

assertArrayEquals(right,pri.printPrimes(5));

}

 

}

Junit结果:

 技术分享

 

Eclemma结果:

 技术分享

 

其中对应该程序为hw3change.javahw3changeTest.java.

软件测试第三次作业junit和Eclemma的使用

标签:log   软件测试   ima   family   sys   equals   height   节点   void   

原文地址:http://www.cnblogs.com/QinYongGui/p/6542157.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!