java mocked_java – 使mocked方法返回传递给它的参数
考慮一個方法簽名,如:
public String myFunction(String abc);
Mockito可以幫助返回方法收到的相同字符串嗎?
解決方法:
您可以在Mockito中創(chuàng)建答案.讓我們假設(shè),我們有一個名為Application的接口,其方法為myFunction.
public interface Application {
public String myFunction(String abc);
}
以下是Mockito答案的測試方法:
public void testMyFunction() throws Exception {
Application mock = mock(Application.class);
when(mock.myFunction(anyString())).thenAnswer(new Answer() {
@Override
public String answer(InvocationOnMock invocation) throws Throwable {
Object[] args = invocation.getArguments();
return (String) args[0];
}
});
assertEquals("someString",mock.myFunction("someString"));
assertEquals("anotherString",mock.myFunction("anotherString"));
}
從Mockito 1.9.5和Java 8開始,使用lambda函數(shù)有一種更簡單的方法:
when(myMock.myFunction(anyString())).thenAnswer(i – > i.getArguments()[0]);
標簽:java,mockito
來源: https://codeday.me/bug/20190916/1806815.html
總結(jié)
以上是生活随笔為你收集整理的java mocked_java – 使mocked方法返回传递给它的参数的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: (四)JMockit 的API:@Inj
- 下一篇: fiddler手机下载证书提示No ro