Junit测试框架
一个开源的Java测试框架
一个开源的Java测试框架
一个简单易用、功能强大的单元级测试框架
Junit 3测试框架:
public class Number {
/**
* 有返回值
*
* @param a
* @param b
* @return
*/
public int add1(int a, int b) {
// TODO Auto-generated method stub
return a + b;
}
/**
* 没有返回值
* @param a
* @param b
*/
public void add2(int a, Double b) {
// TODO Auto-generated method stub
System.out.println(a + b);
}
}
Junit3必须继承TestCase类,方法名必须是以test开头的;
import junit.framework.TestCase;
public class TestNumber extends TestCase {
// Number类
private Number number;
@Override
protected void setUp() throws Exception {
// TODO Auto-generated method stub
super.setUp();
number = new Number();
System.out.println("初始化....");
}
@Override
protected void tearDown() throws Exception {
// TODO Auto-generated method stub
super.tearDown();
number = null;
System.out.println("销毁...");
}
/**
* 必须方法名是test开头
*
* 绿色是成功! 红色是失败!
*/
public void testMy() {
int num = number.add1(10, 30);
// assertEquals("ok!", 40, num);
assertEquals("失败!", 50, num);
}
public void testAdd() {
// number.add2(10, 60.67);
// assertNull("对象为空!", null);
assertNotNull("对象不为空!", null);
}
}
Junit4中所有的测试用例采用@Annotation标注,这比JUnit3的通过类继承和特定方法名带来更大的灵活性
public class TestNumber {
//Number类
private Number number;
@Before
public void start(){
number = new Number();
System.out.println("start...");
}
@After
public void end(){
number = null;
System.out.println("end...");
}
/**
* 自动测试
*/
@Test
public void my1(){
number.add2(10, 50d);
}
@Test
public void my2(){
Assert.assertEquals("错误!", 20, number.add1(10, 5));
}
}