使用 Mockito 測試 Java 函數的步驟:新增 Mockito 依賴項。建立模擬物件並設定模擬行為。呼叫要測試的函數。斷言函數的預期行為。使用 verify() 驗證模擬的交互作用。
如何使用Mockito 進行Java 函數的單元測試
在Java 中進行單元測試時,Mockito 是一個流行的模擬框架,它允許你創建測試替身來模擬外部依賴項。使用 Mockito 來測試 Java 函數非常簡單。
依賴項
在你開始之前,請確保在你的專案中包含Mockito 依賴項:
<dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <version>4.6.1</version> <scope>test</scope> </dependency>
建立測試類
要建立函數測試類,請建立一個新類別並擴展MockitoTestCase
類,如下所示:
import org.junit.Before; import org.junit.Test; import org.mockito.Mockito; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; public class FunctionTest extends MockitoTestCase { // 定义要测试的函数 private Function<Integer, Integer> function; @Before public void setUp() { // 创建函数的模拟 function = Mockito.mock(Function.class); } // 测试函数的行为 @Test public void testFunction() { // 设置函数的模拟行为 Mockito.when(function.apply(10)).thenReturn(20); // 调用要测试的函数 int result = function.apply(10); // 断言函数的预期行为 assertEquals(20, result); verify(function, times(1)).apply(10); } }
實戰案例
讓我們考慮一個簡單的函數addTen()
,它接受一個數字並傳回一個加10 的結果。
public class MathFunctions { public int addTen(int number) { return number + 10; } }
測試實戰案例
要使用Mockito 測試此函數,請建立測試類別如下所示:
import org.junit.Before; import org.junit.Test; import org.mockito.Mockito; import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; public class MathFunctionsTest extends MockitoTestCase { private MathFunctions mathFunctions; @Before public void setUp() { mathFunctions = Mockito.mock(MathFunctions.class); } @Test public void testAddTen() { Mockito.when(mathFunctions.addTen(10)).thenReturn(20); int result = mathFunctions.addTen(10); assertEquals(20, result); verify(mathFunctions, times(1)).addTen(10); } }
結論
使用Mockito 進行Java 函數的單元測試非常簡單。透過創建模擬、定義模擬的行為並斷言函數的預期行為,你可以輕鬆測試函數的正確性。
以上是如何用Mockito單元測試Java函數?的詳細內容。更多資訊請關注PHP中文網其他相關文章!