JUnit深入浅出

JUnit是一个回归测试框架,是程序员测试——白盒测试,继承TestCase类就可以用JUnit进行测试了

import junit.framework.TestCase;
public class Test extends TestCase{
	public void testAdd(){
		assertEquals(1, 1);
	}
}

1、编写的测试类必须继承junit.framework.TestCase
2、里面的测试方法命名应该以test开头,必须是public void 而且不能有参数,否则不能使用junit
3、尽量一个testXXX方法对一个功能单一的方法进行测试
4、使用assertEquals等junit.framework.TestCase中的断言方法来判断测试结果正确与否

JUnit提供了一对方法,一个在运行测试方法前初始化一些必备的条件,而另外一个就是测试完毕后去掉初始化的条件
setUp()---->testXXX()---->tearDown()

import hb.util.SampleCalculator;
import junit.framework.TestCase;

public class TestSample extends TestCase {
	
	public SampleCalculator calculator = null;
	
	public void testAdd(){
		int result = calculator.add(50, 20);
		System.out.println(result);
		assertEquals(70, result);
	}
	
	public void testSubtration(){
		int abc = calculator.subtration(50, 20);
		System.out.println(abc);
		assertEquals(30, abc);
	}
	
	//每次测试一次的时候先执行setUp()这个方法
	@Override
	public void setUp(){
		calculator = new SampleCalculator();
		System.out.println("set up!");
	}
	//每次测试一次完成之后执行tearDown()这个方法
	@Override
	public void tearDown(){
		System.out.println("tearDown");
	}
}

Error和Failures的区别?

Errors:表示程序本身的错误(程序有逻辑问题)

import junit.framework.TestCase;
public class ErrorTest extends TestCase{
	public void testError(){
		assertEquals(3, 3);
		int result = 8 / 0;
	}
}

Failures:表示测试失败(结果与期望的值不一致)

import junit.framework.TestCase;
public class TestFailure extends TestCase{
	public void testFailure(){
		assertEquals(5, 3);
	}
}

因此,我们在写测试程序的时候要先保证Errors是没有错误的,然后再来看Failures有没有错误

猜你喜欢

转载自hbiao68.iteye.com/blog/1264492