jjzjj

doAnswer

全部标签

java - 静态方法的 doAnswer - PowerMock

我正在使用的静态方法之一,它做了两件事。它返回一些数据,但它也修改传递给它的参数对象。这个更新后的参数对象随后会在代码中使用。我正在使用PowerMock模拟返回行为。为了定义第二部分-更新输入参数,我正在定义doAnswer方法,但它不起作用。我尝试测试的方法如下所示。publicvoidlogin()throwsConnectionException,AsyncApiException{ConnectorConfigpartnerConfig=newConnectorConfig();//Thiscallsetsthevalueinonemembervariable'service

java - 使用 Mockito,如何在 void 方法上拦截回调对象?

我正在使用mockito测试旧版JAAS/LDAP登录模块。javax.security.auth.callback.CallbackHandler接口(interface)定义了函数:voidhandle(javax.security.auth.callback.Callback[]callbacks)我希望callbacks包含一个NameCallback,它是需要被操作以通过测试的对象。有没有办法有效地模拟这个,或者我会更好地使用CallbackHandler的stub实现? 最佳答案 对于返回void的函数,使用doAnsw

java - 使用 Mockito,如何在 void 方法上拦截回调对象?

我正在使用mockito测试旧版JAAS/LDAP登录模块。javax.security.auth.callback.CallbackHandler接口(interface)定义了函数:voidhandle(javax.security.auth.callback.Callback[]callbacks)我希望callbacks包含一个NameCallback,它是需要被操作以通过测试的对象。有没有办法有效地模拟这个,或者我会更好地使用CallbackHandler的stub实现? 最佳答案 对于返回void的函数,使用doAnsw

testing - 在 Kotlin 中使用 Mockito doAnswer

与这段Java代码等效的Kotlin是什么?doAnswer(newAnswer(){@OverridepublicObjectanswer(InvocationOnMockinvocation)throwsThrowable{Designdesign=newDesign();GetDesign.Listenercallback=(GetDesign.Listener)invocation.getArguments()[0];callback.onSuccess(design);returnnull;}}).when(someRepository).getDesign(any(GetD

testing - 在 Kotlin 中使用 Mockito doAnswer

与这段Java代码等效的Kotlin是什么?doAnswer(newAnswer(){@OverridepublicObjectanswer(InvocationOnMockinvocation)throwsThrowable{Designdesign=newDesign();GetDesign.Listenercallback=(GetDesign.Listener)invocation.getArguments()[0];callback.onSuccess(design);returnnull;}}).when(someRepository).getDesign(any(GetD

java - doThrow() doAnswer() doNothing() 和 doReturn() 在 mockito 中的用法

我正在学习mockito,我从link中了解了上述函数的基本用法。.但是我想知道它是否可以用于任何其他情况? 最佳答案 doThrow:主要用于在模拟对象中调用方法时抛出异常。publicvoidvalidateEntity(finalObjectobject){}Mockito.doThrow(IllegalArgumentException.class).when(validationService).validateEntity(Matchers.any(AnyObjectClass.class));doReturn:当你想在

java - 模拟: doAnswer Vs thenReturn

我正在使用Mockito进行后期单元测试。我对何时使用doAnswer和thenReturn感到困惑。谁能帮我详细介绍一下?到目前为止,我已经用thenReturn进行了尝试。 最佳答案 如果在模拟方法调用时知道返回值,则应使用thenReturn或doReturn。调用模拟方法时会返回此定义的值。thenReturn(Tvalue)Setsareturnvaluetobereturnedwhenthemethodiscalled.@Testpublicvoidtest_return()throwsException{Dummydu