JUnit使用

 

1 JUnit的提出html

官網:http://junit.orgjava

JUnit is a simple framework to write repeatable tests. It is an instance of the xUnit architecture for unit testing frameworks.程序員

其中xUnit是一套基於測試驅動開發的測試框架,包含PythonUnit,CppUnit,JUnit。框架

JUnit是由Erich Gamma和Kent Beck編寫的一個迴歸測試框架。JUnit測試是程序員測試,即白盒測試,由於程序員知道被測試的軟件如何(How)完成功能和完成什麼樣(What)的功能。eclipse


點擊下載安裝連接:工具


託管在GitHub中。測試

JUnit3中,全部須要測試的類直接繼承junit.framework.TestCase類,便可用JUnit進行自動化測試。而在JUnit4中則沒必要如此。htm

JUnit4文檔:http://junit.org/junit4/javadoc/latest/index.htmlblog

JUnit是一個開發源代碼的Java測試框架,用於編寫和運行可重複的測試。在eclipse中已經集成好了此項工具。繼承

 

2 JUnit的基本使用

如下是一個使用例子。

MyMath.java

package test;

public class MyMath {
	public int div(int i,int j) throws Exception{	// 定義除法操做,若是有異常,則交給被調用到處理
		int temp = 0 ;	// 定義局部變量
		temp = i / j ;	// 計算,可是此處有可能出現異常
		return temp ;
	}
}

右鍵選中src中的MyMath.java文件,new -> Other -> Java -> junit -> TestCase


 通常來講,一個測試用例對應着一個測試功能,一個測試站點對應着一套測試用例。點擊next ,選擇要測試的方法。



選擇Finish後,提示是否增長JUnit的包,點擊OK。所有完成後會創建一個MyMathTest的類,代碼以下:

package test;

import static org.junit.Assert.*;

import org.junit.Test;

public class MyMathTest {

	@Test
	public void testDiv() {
		fail("Not yet implemented");
	}

}

修改MyMathTest類。

package test;

import static org.junit.Assert.*;

import org.junit.Test;

import junit.framework.Assert;

public class MyMathTest {

	@Test
	public void testDiv() {
		try{
			Assert.assertEquals(new MyMath().div(10, 2), 5);
			Assert.assertEquals(new MyMath().div(10, 3), 3,1);
		}catch(Exception e){
			e.printStackTrace();
		}
	}
}

點擊運行


 若是正確,則會顯示Green Bar,不然,會顯示Red Bar


值得一提的是,try語句塊內只要有錯,Failures的數目都會爲1.

使用JUnit方式的最大好處是,相比本身使用assert斷言,效率大大提升,使用方式更加靈活,直觀。

相關文章
相關標籤/搜索