
1、准备测试类

java
public class Calculator {
private static int result;
public void add(int n) {
result = result + n;
}
public void substract(int n) {
result = result -1; //Bug:正确的应该是result=result-n
}
public void multiply(int n) {
// result = result*n;方法未写好
}
public void divide (int n) {
result = result/n;
}
public void squre(int n) {
result = n * n;
}
public void squareRoot(int n) {
for(;;)
;//Bug:死循环
}
public void clear() {
result = 0;
}
public int getResult() {
return result;
}
}
2、引入Junit测试包




此时Junit包已经加载在项目下

3、构建Junit框架


这样就构建test包,一般test包和src源码包分别放在不同的文件夹中。


创建Junit测试类



就会生成一个默认的测试框架

最后对测试框架进行简单的编写
java
import static org.junit.Assert.*;
import org.junit.Before;
import org.junit.Ignore;
import org.junit.Test;
public class TestCaculator {
private static Calculator calcultor = new Calculator();
@Before
public void setUp() throws Exception {
calcultor.clear();
}
@Test
public void testAdd() {
calcultor.add(2);
calcultor.add(3);
assertEquals(5, calcultor.getResult());
}
@Test
public void testSubstract() {
calcultor.add(10);
calcultor.substract(2);//因为每次运行测试方法前,都会运行setUp()进行清空,所以互不影响
assertEquals(8, calcultor.getResult());
}
@Ignore("Mutiply not yet implemented")
@Test
public void testMultiply() {
}
@Test
public void testDivide() {
calcultor.add(10);
calcultor.divide(5);
assertEquals(2, calcultor.getResult());
}
}





这就是Junit4在eclipse中的测试用例编写和运行的过程
