撰寫並執行 JUnit 測試

在本節中,您將使用 JUnit 測試架構來撰寫並執行測試。如果要開始使用 JUnit,您可以參閱 JUnit Cookbook

撰寫測試

建立專案 "JUnitTest"。這時您可以先撰寫第一個測試。您將在 TestCase 的子類別中實作測試。 做法是使用標準「類別」精靈或已特殊化的 Test Case 精靈:

  1. 開啟「新建」精靈(檔案 > 新建 > JUnit Test Case)。
  2. 選取新建 JUnit 3.8.1 測試,輸入 "TestFailure" 作為測試類別的名稱:

    TestCase 建立精靈第 1 頁

    附註:如果您要使用 JUnit 4 測試,您必須確定編譯器標準設為 5.0。

  3. 您會見到一則警告訊息,要求您將 JUnit 程式庫加到建置路徑中。 請利用請按一下這裡鏈結來自動新增 JUnit 程式庫。
  4. 按一下完成,建立測試類別。

新增失敗的測試方法至 TestFailure 類別。 快速輸入測試方法的做法就是利用測試範本。若要執行這項作業,請將游標放在類別宣告內。 輸入 "test" 後按 Alt+/ 來啟動程式碼輔助, 然後選取 "test" 範本。將已建立之方法的名稱變更為 testFailure,然後呼叫 fail() 方法。

public void testFailure() throws Exception {
    fail();
}

現在您可以執行第一個測試。

執行測試

如果要執行 TestFailure,請啟動工具列的執行下拉功能表, 然後選取執行為 > JUnit 測試。 您可以在 JUnit 視圖中視察測試結果。這個視圖會告訴您測試執行的進度和狀態:

測試失敗

每當您啟動測試執行時,視圖就會顯示在現行視景中。 如果要方便排列 JUnit 視圖,請定置它作為快速視圖。 JUnit 視圖具有兩個標籤:一個提供您失敗清單, 另一個則以樹狀結構提供您完整測試套組。 您可以從某個失敗項目導覽至對應的程式檔,方法為按兩下失敗追蹤中的對應行。

定置 JUnit 視圖作為快速視圖,移除 testFailure() 方法中的 fail() 陳述式,以便通過測試並重新執行測試。 您可以重新執行測試,方法為按一下視圖工具列中的重新執行按鈕,或者您可以啟動執行下拉功能表,重新執行上次啟動的程式。這一次測試應該成功。因為測試成功,所以 JUnit 視圖不會蹦現出來, 但是成功指示器會顯示在 JUnit 視圖圖示上,而且狀態行會顯示測試結果。每當您在執行後變更了工作區內容時,就會以 "*" 裝飾視圖圖示,作為重新執行測試的提示。

測試成功 - 測試執行成功
順利完成測試但工作區已變更 - 順利完成測試作業,但工作區內容已因最後一個測試作業而變更。

除了按照上述來執行 Test Case 外,您還可以:

自訂測試配置

當您想要傳遞參數或自訂測試執行的設定時, 請開啟「啟動配置」對話框。在工具列的執行下拉功能表中選取執行...

JUnit 啟動配置

在這個對話框中,您可以指定要執行的測試、它的引數、它的執行時期類別路徑, 以及 Java 執行時期環境。

除錯測試失敗

測試失敗的案例中,您可以遵循下列步驟以除錯:

  1. 從 JUnit 視圖的「失敗」標籤中按兩下失敗的項目,於編輯器中開啟對應的檔案。
  2. 在測試方法的起始處設定岔斷點。
  3. 選取 Test Case, 然後從除錯下拉功能表中執行除錯方式>JUnit 測試

JUnit 啟動配置具有「保持作用中」選項。如果您的 Java 虛擬機器支援「快速程式碼置換」,您可以修正程式碼, 並重新執行測試,而不需重新啟動完整測試執行。如果要啟用這個選項, 請在 JUnit 啟動配置中選取除錯時在測試執行之後保持 JUnit 執行

建立測試套組

JUnit TestSuite 精靈可協助您建立測試套組。 您可以選取一組應該屬於套件的類別。

  1. 開啟「新建」精靈
  2. 選取 Java > JUnit > JUnit 測試套組,然後按下一步
  3. 輸入測試套組類別的名稱(慣例就是使用依預設出現的 "AllTests")。

    「測試套組」精靈

  4. 選取應該併入在套件中的類別。我們目前僅具有一個單一測試類別, 但是稍後您可以新增測試類別至套件。

有兩種方法可讓您從測試套組新增或移除測試類別:

附註:精靈會在所建的「測試」套件類別中放入兩個標記(//$JUnit-BEGIN$//$JUnit-END$),以便讓精靈更新現有的測試套組類別。 我們不建議在標記之間編輯程式碼。