Junit测试

初学Junit单元测试,流程如下:

1.使用eclipse编写一个Triangle类来判断三角形种类,为了体现测试结果,刻意添加几处bug

package mytest;

 

public class Triangle {

private static String result; // 储存结果

public void isWhat(int a,int b,int c) {

if(a+b<=c||a+c<=b||b+c<=a)

result="not a triangle"; //边长不合理

 

    else if(a==b && b==c)

result="equilateral"; //等边

 

else if((a==b && a!=c)||(a==c && a!=b))

result="isosceles"; //等腰(bug:少判断b=c的情况)

 

else if(b!=c && a!=c )

result="scalene"; //不等边(bug:少判断a!=b的情况)

 

}

public void clear() {

result=null;

}

public String getResult() {

return result;

}

}

2.在测试项目中引入Junit

打开项目的属性,在弹出的属性窗口中,首先在左边选择Java Build Path”,然后到右上选择“Libraries”标签,之后在最右边点击“Add Library…”按钮,添加junit4测试包,如下图所示:

输入包名和类名,如下图所示:

 

 

点击下一步,选择isWhat函数进行测试:

4.编写测试类

package mytest;

 

import static org.junit.Assert.*;

 

import org.junit.Before;

import org.junit.Test;

 

public class TriangleTest {

 

private static Triangle mytri = new Triangle();

@Before

public void setUp() throws Exception {

mytri.clear();

 

}

 

@Test

public void testIsWhat1() {//边长不合理测试

mytri.isWhat(1, 1, 0);

assertEquals("not a triangle", mytri.getResult());

}

 

@Test

public void testIsWhat2() {//等边测试

mytri.isWhat(1, 1, 1);

assertEquals("equilateral", mytri.getResult());

}

 

@Test

public void testIsWhat3() {//等腰测试

mytri.isWhat(1, 2, 2);

assertEquals("isosceles", mytri.getResult());

}

 

@Test

public void testIsWhat4() {//不等边测试

mytri.isWhat(3, 3, 2);

assertEquals("scalene", mytri.getResult());

}

}

结果如下:

 

可以看出等腰与不等边判断中的bug

 

posted @ 2018-03-25 17:37  tjuky  阅读(108)  评论(0)    收藏  举报