JWorld@TW the best professional Java site in Taiwan
      註冊 | 登入 | 全文檢索 | 排行榜  

» JWorld@TW » Java 新手區 » 學習筆記  

按列印兼容模式列印這個話題 列印話題    把這個話題寄給朋友 寄給朋友    訂閱主題
reply to topicthreaded modego to previous topicgo to next topic
本主題所含的標籤
作者 [烏龜訂購系統開發與實作-09]-撰寫 Java 控制類別的功能測試程式碼框架
kenming





發文: 194
積分: 10
於 2011-04-25 08:46 user profilesend a private message to usersend email to kenmingreply to postreply to postsearch all posts byselect and copy to clipboard. 
ie only, sorry for netscape users:-)add this post to my favorite list
** 至本實作步驟可以先把 EA Model 檔與 Eclipse Java 專案存檔。將整個專案目錄備份至 /Stage-1_1 目錄下,視為第一個開發階段的版本。 **

 o 下載 Java 專案與 Model 檔-烏龜訂購系統_Stage1_1.rar

在 eclipse 環境下要撰寫測試程式碼是非常簡單的一件事,原因是 eclipse 已內建了 JUnit 測試框架 (JUnit Test Framework),作為一位程式撰寫人員,最起碼要為每一個控制性的功能(服務)類別撰寫功能測試程式碼 (functional test code),可以說是軟體品質的最基本保障,也是應該要具備的責任與良心了

1. 在 Eclipse 內的 [Project Explorer],選擇 「訂購烏龜_Control.java」,按下滑鼠右鍵,選擇 [New] → [Other…],然後在 Wizard 對話框內,選擇 [Java] → [JUnit] → [JUnit Test Case] ,然後點擊 【Next】,在出現的對話框內,填入以下資訊:

 o 點選 「New JUnit 4 Test」。 (新版本的測試框架可以根據 Java 5.0 以上版本的新特徵特性來建構;更簡單、易於使用,以及更敏捷的初始化與清理等工作)

 o Package: com.order.test (端看開發人員的習慣,這裡是採用將測試程式碼均放置於原始程式碼所在位置的子目錄下)

 o Name:訂購烏龜_Control_Test (測試類別命名的建議為 原類別名稱 + _Test)
勾選 setUp() method (讓測試類別可進行初始化的工作)。


圖 13、新增 JUnit 測試程式碼的對話框

2. 點擊 【Next】,在出現「選擇測試的 method」對話框時,點選該控制類別所宣告的 method。一般而言,功能測試的重心會在於測試功能性類別所揭露出的企業邏輯 (business logic),這些企業邏輯的演算核心均會被封裝 (encapsulate)在功能性類別所宣告的 method 內。


圖 14、針對類別選擇要測試的方法

3. 編輯所產出測試程式碼的內容。
訂購烏龜_Control_Test.java:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
package com.order.control.test;
 
import static org.junit.Assert.*;
import org.junit.Before;
import org.junit.Test;
 
import java.util.*;
import com.order.control.*;
import com.order.dto.*;
 
public class 訂購烏龜_Control_Test {
  private 訂購烏龜_Control control;
  private VO_結帳資訊 mOrder; 
 
  @Before
  public void setUp() throws Exception {
    control = new 訂購烏龜_Control();
  }
 
  @Test
  public void testList烏龜清單() {
    ArrayList<VO_烏龜資訊> expected= null;
    ArrayList<VO_烏龜資訊> result = control.list烏龜清單();
    
    assertNull(result);
  }
 
  @Test
  public void test結帳() {
    VO_訂購確認資訊 expected = null;
    mOrder = new VO_結帳資訊();
    VO_訂購確認資訊 result = control.結帳(mOrder);
    
    assertNull(result);
  }
 
  @Test
  public void testSaveOrder() {
    //將 mOrder(結帳資訊) 寫入至 Database.
    boolean result = control.SaveOrder();
    
    assertFalse(result);
  }
}


 o 目前所撰寫的測試程式碼仍偏向是框架 (skeleton)性質的,不過已先加入欲測試的控制類別,以及為其初始化。目前就是先讓其可以通過 JUnit 的測試即可。

4. 執行 JUnit 測試。

在 [Package Explorer] 內,點選待測試的控制測試類別,本例為「訂購烏龜_Control_Test.java」。在 eclipse 的工具列 (toolbar)中,選擇 [RUN] (綠色右箭頭符號圖示) → [Run As] → [JUnit Test],執行後即可顯示測試的結果。 (若所有方法均測試通過,即顯示綠棒;若其中一個方法測試失敗,則顯示紅棒。)


圖 15、在 Eclipse 內執行 JUnit 測試


reply to postreply to post
=$∼寸心千里∼$=
= blog: http://www.kenming.idv.tw/
= 軟體課程訊息 http://www.hsdc.com.tw/
» JWorld@TW »  Java 新手區 » 學習筆記

reply to topicthreaded modego to previous topicgo to next topic
  已讀文章
  新的文章
  被刪除的文章
Jump to the top of page

JWorld@TW 本站商標資訊

Powered by Powerful JuteForum® Version Jute 1.5.8