
- JUnit 教程
- JUnit - 首頁
- JUnit - 概述
- JUnit - 環境設定
- JUnit - 測試框架
- JUnit - 基本用法
- JUnit - API
- JUnit - 編寫測試
- JUnit - 使用斷言
- JUnit - 執行過程
- JUnit - 執行測試
- JUnit - 套件測試
- JUnit - 忽略測試
- JUnit - 時間測試
- JUnit - 異常測試
- JUnit - 引數化測試
- JUnit - 與 Ant 整合
- JUnit - 與 Eclipse 整合
- JUnit - 擴充套件
- JUnit 有用資源
- JUnit - 常見問題解答
- JUnit - 快速指南
- JUnit - 有用資源
- JUnit - 討論
JUnit - 測試框架
JUnit 是一個迴歸測試框架,開發者使用它在 Java 中實現單元測試,從而加快程式設計速度並提高程式碼質量。JUnit 框架可以輕鬆地與以下任何一個整合:
- Eclipse
- Ant
- Maven
JUnit 測試框架的功能
JUnit 測試框架提供以下重要功能:
- Fixture(測試夾具)
- 測試套件
- 測試執行器
- JUnit 類
Fixture(測試夾具)
Fixture(測試夾具)是一組物件的固定狀態,用作執行測試的基線。測試夾具的目的是確保測試在一個已知且固定的環境中執行,以便結果可重複。它包括:
- setUp() 方法,在每次測試呼叫之前執行。
- tearDown() 方法,在每次測試方法之後執行。
讓我們來看一個例子:
import junit.framework.*; public class JavaTest extends TestCase { protected int value1, value2; // assigning the values protected void setUp(){ value1 = 3; value2 = 3; } // test method to add two values public void testAdd(){ double result = value1 + value2; assertTrue(result == 6); } }
測試套件
測試套件捆綁了一些單元測試用例並一起執行它們。在 JUnit 中,`@RunWith` 和 `@Suite` 註解都用於執行套件測試。下面是一個使用 TestJunit1 和 TestJunit2 測試類的例子。
import org.junit.runner.RunWith; import org.junit.runners.Suite; //JUnit Suite Test @RunWith(Suite.class) @Suite.SuiteClasses({ TestJunit1.class ,TestJunit2.class }) public class JunitTestSuite { }
import org.junit.Test; import org.junit.Ignore; import static org.junit.Assert.assertEquals; public class TestJunit1 { String message = "Robert"; MessageUtil messageUtil = new MessageUtil(message); @Test public void testPrintMessage() { System.out.println("Inside testPrintMessage()"); assertEquals(message, messageUtil.printMessage()); } }
import org.junit.Test; import org.junit.Ignore; import static org.junit.Assert.assertEquals; public class TestJunit2 { String message = "Robert"; MessageUtil messageUtil = new MessageUtil(message); @Test public void testSalutationMessage() { System.out.println("Inside testSalutationMessage()"); message = "Hi!" + "Robert"; assertEquals(message,messageUtil.salutationMessage()); } }
測試執行器
測試執行器用於執行測試用例。以下示例假設測試類TestJunit已存在。
import org.junit.runner.JUnitCore; import org.junit.runner.Result; import org.junit.runner.notification.Failure; public class TestRunner { public static void main(String[] args) { Result result = JUnitCore.runClasses(TestJunit.class); for (Failure failure : result.getFailures()) { System.out.println(failure.toString()); } System.out.println(result.wasSuccessful()); } }
JUnit 類
JUnit 類是在編寫和測試 JUnit 時使用的重要類。一些重要的類包括:
Assert - 包含一組斷言方法。
TestCase - 包含一個測試用例,定義了執行多個測試的夾具。
TestResult - 包含用於收集執行測試用例結果的方法。
廣告