JUnit入门

JUnit入门
        JUnit 是一个开源的 java 单元测试框架。在 1997 年,由 Erich Gamma Kent Beck 开发完成。这两个牛人中 Erich Gamma GOF 之一; Kent Beck 则在 XP 中有重要的贡献。
JUnit 一些特性:
1): 提供的 API 可以让你写出测试结果明确的可重用单元测试用例
2): 提供了三种方式来显示你的测试结果,而且还可以扩展
3): 提供了单元测试用例成批运行的功能
4): 超轻量级而且使用简单
5): 整个框架设计良好,易扩展

对不同的测试对象: ClassJspServletEjb 等, Junit 有不同的使用技巧,下面主要是以Class为主

Sample待测Class
public class TestSample extends TestCase {  
     public void testAdd() {  
        SampleCalculator calculator = new SampleCalculator();  
        int result = calculator.add(50, 20);  
        assertEquals(70, result);  
    }  
	  
    public void testSubtration() {  
        SampleCalculator calculator = new SampleCalculator();  
        int result = calculator.subtration(50, 20);  
        assertEquals(30, result);  
    }  
}  
 
Sample的TestCase
import junit.framework.TestCase;  
public class TestSample extends TestCase {  
	    public void testAdd() {  
	        SampleCalculator calculator = new SampleCalculator();  
	        int result = calculator.add(50, 20);  
	        assertEquals(70, result);  
	    }  
	  
	    public void testSubtration() {  
	        SampleCalculator calculator = new SampleCalculator();  
	        int result = calculator.subtration(50, 20);  
	        assertEquals(30, result);  
	    }  
}  
  框架规定:
1) 所有的测试类,必须继承自 junit .framework.TestCase
2) 里面的测试方法,命名应该以Test开头,必须是public void,不能有参数
3) 尽量一个TestXXX方法对一个功能单一的方法进行测试
4)  使用 assertEqualsjunit .framework.TestCase 中的断言方法来判断测试结果正确与否

批量测试: SampleTestAll
import junit.framework.TestSuite;  
import junit.framework.Test;
	  
public class TestAll {  
	    public static Test suite() {  
	        TestSuite suite = new TestSuite("TestSuite Test");  
	        //添加junit测试类  
	        suite.addTestSuite(TestSample.class);  
	        return suite;  
	    }  
}  
 
TestCase中的初始化和执行顺序
初始化
    protected void setUp(){
//    	初始化…
    	System.out.println("初始化…");
    }
     protected void tearDown(){
//    	撤销初始化…… 
        System.out.println("结束");
     }
执行顺序:setUp方法->TestCase中的TestXXX方法一-->tearDown-->setUp方法->TestCase中的TestXXX方法二-->tearDown
结果
Errors:非正常,出现错误。
     Failures:测试预期的失败,由于JUnit的判断失败,可能是测试代码的逻辑错误或者代码Bug



 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值