首頁>技術>

JUnit是一個編寫可重複測試的簡單框架。它是單元測試框架的xUnit架構的一個例項。

Eclipse中為專案新增Junit單元測試;JUnit的基本使用規範

1. 測試方法必須使用@Test修飾

2. 測試方法必須使用public void進行修飾,不能帶引數

4. 測試程式碼的包應該和被測試程式碼包結構保持一致

5. 測試單元中的每個方法必須可以獨立測試,方法間不能有任何依賴

6. 測試類一般使用Test作為類名的字尾

7. 測試方法使一般用test作為方法名的字首

8. 命名一般是“測試類名稱+Test”

9. 常用註解:@Before,@After

常用註解

@Test:將一個普通方法修飾成一個測試方法

@Test(excepted=xxx.class): xxx.class表示異常類,表示測試的方法丟擲此異常時,認為是正常的測試透過的

@Test(timeout=毫秒數) :測試方法執行時間是否符合預期

@Before:會在每一個測試方法被執行前執行一次

@After:會在每一個測試方法執行後被執行一次

@BeforeClass: 會在所有的方法執行前被執行,static方法

@AfterClass:會在所有的方法執行之後進行執行,static方法

@Ignore:所修飾的測試方法會被測試執行器忽略

@RunWith:可以更改測試執行器org.junit.runner.Runner

Parameters:引數化註解

測試失敗說明

Failure:一般是由於測試結果和預期結果不一致引發的,表示測試的這個點發現了問題

error:是由程式碼異常引起的,它可以產生於測試程式碼本身的錯誤,也可以是被測試程式碼中隱藏的bug

@Before,@After和@BeforeClass和@AfterClass的區別

@Before:一般用於準備測試環境,在測試類中呼叫每個測試方法的時候都會各執行一次@Before部分的程式碼;

@Beforeclass: 在類中只會被執行一次;

@After:一般用於釋放資源,對於每一個測試方法都要執行一次;

@Afterclass:所有測試用例執行完才執行一次;

一個JUnit4的單元測試用例執行順序為:

@BeforeClass -> @Before -> @Test -> @After -> @AfterClass;

每一個測試方法的呼叫順序為:

@Before -> @Test -> @After;

@Before和@After測試程式碼
public class TestM {		@Before	public void test1(){				System.out.println("================新增測試條件===============");	}		@Test	public void test2(){				int actual=5;		Assert.assertSame(5, actual);				System.out.println("具體的測試內容。。。。。。");	}	@Test	public void test22(){				int actual=5;		Assert.assertSame(5, actual);				System.out.println("具體的測試內容222。。。。。。");	}	@After	public void test3(){				System.out.println("================恢復測試環境===============");	}}

執行結果:

================新增測試條件===============

具體的測試內容。。。。。。

================恢復測試環境===============

================新增測試條件===============

具體的測試內容222。。。。。。

================恢復測試環境===============

@BeforeClass和@AfterClass測試程式碼
public class TestM {		@BeforeClass	public static void test1(){				System.out.println("================新增測試條件===============");	}	@Test	public void test2(){				int actual=5;		Assert.assertSame(5, actual);				System.out.println("具體的測試內容。。。。。。");	}	@Test	public void test22(){				int actual=5;		Assert.assertSame(5, actual);				System.out.println("具體的測試內容222。。。。。。");	}	@AfterClass	public static void test3(){				System.out.println("================恢復測試環境===============");	} }

執行結果:

================新增測試條件===============

具體的測試內容。。。。。。

具體的測試內容222。。。。。。

================恢復測試環境===============

10
最新評論
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • SUBTOTAL函式進階教程