首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> Java 程式設計 >> Java 程式設計入門

Eclipse 整合 JUnit 實戰:從建立測試案例到自動化測試套件

     編輯:Java 程式設計入門

為何需要單元測試?

單元測試是保障軟體品質的基石。JUnit 作為 Java 領域事實標準,支援測試類/方法層級驗證,並可將多個 TestCase 組合成 TestSuite 實現自動化回歸。Eclipse 內建 JUnit 整合,讓撰寫與執行測試如同開發主代碼般順暢。

實戰:為 Hello.abs() 建立測試

1. 準備被測類別

package example;
public class Hello {
    public int abs(int n) {
        return n >= 0 ? n : -n;
    }
}

Hello 類別原始碼

2. 產生 JUnit 測試類別

  • 在 Package Explorer 右鍵 Hello.java → New → JUnit Test Case。
  • Eclipse 提示加入 junit.jar 至 Build Path,確認後產生 HelloTest。
  • 建立測試案例精靈

3. 選擇測試目標與生命週期方法

  • 勾選 setUp()、tearDown() 並選擇測試 abs(int) 方法。
  • 選擇測試方法

4. 撰寫測試邏輯

public class HelloTest extends TestCase {
    private Hello hello;
    protected void setUp() { hello = new Hello(); }
    protected void tearDown() { hello = null; }
    public void testAbs() {
        assertEquals(5, hello.abs(5));   // 正數
        assertEquals(5, hello.abs(-5));  // 負數
        assertEquals(0, hello.abs(0));   // 零
    }
}

測試代碼編輯器

JUnit 執行流程解析

try {
    HelloTest test = new HelloTest();
    test.setUp();        // 初始化測試環境
    test.testAbs();      // 執行測試方法
    test.tearDown();     // 清理資源
} catch (Exception e) { /* 標記失敗 */ }
  • 每個 testXxx() 獨立執行,setUp/tearDown 在每次前後調用,確保隔離性。
  • 不可在 testA 依賴 testB 的狀態。

執行與查看結果

  • 右鍵測試類別 → Run As → JUnit Test。
  • 綠條 = 全部通過;紅條 = 有失敗,面板列出失敗方法與堆疊追蹤。
  • JUnit 綠條測試通過
  • 若無 JUnit 視圖:Window → Show View → Other → Java → JUnit。
  • 開啟 JUnit 視圖

進階:組合測試套件

public class AllTests {
    public static Test suite() {
        TestSuite suite = new TestSuite();
        suite.addTestSuite(HelloTest.class);
        suite.addTestSuite(OtherTest.class);
        return suite;
    }
}

執行 AllTests 即可一次跑完所有測試,極適合極限編程(XP)每日多次整合測試,防止代碼「腐爛」。

結語

Eclipse + JUnit 讓單元測試零門檻接入開發流程。養成「先寫測試、再寫實作」的習慣(TDD),配合持續整合自動化跑測,能顯著提升專案可維護性與交付信心。

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved