首頁 > Java > java教程 > 主體

如何使用 Mockito 根據輸入參數模擬返回值?

DDD
發布: 2024-10-24 03:46:02
原創
658 人瀏覽過

How to Mock Return Values Based on Input Arguments with Mockito?

模擬傳遞參數的回傳值

使用特定輸入參數測試方法時,可能需要讓模擬方法傳回相同的值傳遞給它的值。 Mockito 提供了多種方法來實現此目的,具體取決於所使用的版本。

對於Mockito 1.9.5 和Java 8 :

Mockito 添加了對lambda 表達式的支持,允許用於直接返回傳遞的參數:

<code class="java">when(myMock.myFunction(anyString())).thenAnswer(i -> i.getArguments()[0]);</code>
登入後複製

對於較舊的Mockito 版本:

在Mockito 1.9.5 之前,您可以在thenAnswer 方法中使用Answer:

<code class="java">when(mock.myFunction(anyString())).thenAnswer(new Answer<String>() {
    @Override
    public String answer(InvocationOnMock invocation) throws Throwable {
        Object[] args = invocation.getArguments();
        return (String) args[0];
    }
});</code>
登入後複製

以上是如何使用 Mockito 根據輸入參數模擬返回值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板