BOS物流管理系統第三階段

項目地址http://javaweb.bdongs.com
項目名稱:BOS管理系統
登陸賬號:admin
密碼:123

定義測試方法
JUnit使用註解標註爲測試方法並配置它們,下表中給出了JUnit4非常重要的註解。下面所有的註解都用在方法上。

JUnit 4 描述

@Test 將方法標記爲測試方法。

@Before 在每次測試之前執行,一般用於準備測試環境(初始化類等)。

@After 在每次測試之後執行,用於清理測試環境 (例如刪除臨時數據,還原默認值等)。 它也可以擁有清理內存( It can also save memory by cleaning up expensive memory structures.)。

@BeforeClass 在所有測試之前,執行一次。它一般用於執行time intensive activities,例如連接數據庫等。使用該註解標記的方法需要定義爲static void。

@AfterClass 在所有的測試執行完成之後執行一次。 它一般用於清理一些 activities, 例如斷開數據連接。使用該註解標記的方法需要定義爲static void。

@Ignore or @Ignore(“Why disabled”) 標記該註解的測試方法是被禁用的。這對於實際代碼做了修改而測試代碼沒有修改的情況是非常有用的,或者由於這條測試執行時間過長先不將其包含在測試中,最好是提供一下不去測試的原因。

@Test (expected = Exception.class) 如果這個測試方法不拋出賦值的異常(Exception.class)將會失敗。

1.功能
-在項目未在瀏覽器運行之前對獲得的結果和預期的結果進行比較調試,減少BUG和發佈時的修復工作。

2.測試類和代碼類應分開存放.在src目錄下new一個Test資源目錄

3.JUnit Test Case
可以對類中的方法生成測試方法

4.//方法中第一個參數爲預測獲得的結果,第二個爲實際運行結果
將預測結果和運行實際值進行比較
assertEquals(6, new Arithmetic().multiplication(2, 3));

5.Failure – 一般有單元測試使用的斷言方法判斷失敗所引起的,這表示測試點發現了問題,就是說程序輸出結果和我們預期的不一致
error – 一般由代碼異常引起,它可以產生於測試代碼本身的錯誤,也可以是被測試代碼中的一個隱藏的BUG。

6.運行流程
-BeforeClass – 所有加載開始前運行一次.適用於加載配置文件等只需運行一次的代碼塊
-AfterClass – 所有代碼運行完成後加載一次.適用於關閉資源
–整個流程中只會存在一個beforeClass和AfterClass實例
-before/after – 每次加載Test時都會運行,適用於想隨程序運行執行的靜態代碼塊。

7.註解詳解
-@Test
–@Test(expected=anyException.class)
—預測程序會拋出何種異常,若拋出則忽略
–@Test(timeout=any mm)
— 此修飾將在any毫秒後結束測試
-@Ignore
–此修飾符下的方法會被測試運行器忽略
-@RunWith
–可以更改(定製)自己的運行器 org.junit.runner.Runner

8.import static org.junit.Assert.*;斷言

9.測試套件
將測試運行器更改爲Suite.class
用SuiteClasses將測試類包裹其中
@RunWith(Suite.class)
@SuiteClasses({Task1Test.class,Task2Test.class,Task3Test.class})

10.參數化設置
-更改默認測試運行器爲RunWith(Parameterized.class)
-聲明變量來存放預期值和結果值
-聲明一個返回值爲Collection的公共靜態方法,並使用@Parameters進行修飾

直接使用Junit4組件,進行簡單單元測試,在setUp()中初始化各種測試環境如下:

@Override
protected void setUp() throws Exception {
super.setUp();
String[] paths = { "classpath:applicationContext.xml" };
ApplicationContext ctx = new ClassPathXmlApplicationContext(paths);
SpringContextListener.setApplicationContext(ctx);
// ############模擬servlet容器啓動,手動更改配置文件路徑
Constant.CURRENT_PROJECT_PATH = "src/";
// ############直接容器中獲取bean
userManager = (UserManager) ctx.getBean("userManager");
userService = (UserService) ctx.getBean("userService");
}

測試目錄:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章