如何解决如何在Spring XML中定义具有默认答案的Mock
我正在尝试在Spring中使用深层存根定义模拟bean
<bean id="mockLoader" class="org.mockito.Mockito" factory-method="mock" >
<constructor-arg name="classToMock" value="com.foo.Loader" />
<constructor-arg name="defaultAnswer" type="org.mockito.Answers" value="RETURNS_DEEP_STUBS" />
</bean>
程序因错误而失败
未找到匹配的工厂方法:工厂方法'mock(String,Answers)'。检查是否存在具有指定名称和参数的方法,并且该方法是静态的。
但是静态方法确实存在
https://www.javadoc.io/doc/org.mockito/mockito-all/1.9.5/org/mockito/Mockito.html
public static <T> T mock(java.lang.Class<T> classToMock,Answer defaultAnswer)
我想念什么?还有另一种方法可以创建带有深层存根的模拟吗?
mockito版本为1.9.5
春季版本为4.0.7
谢谢!
解决方法
使用Mockito
的静态字段可以工作
<bean id="mockLoader" class="org.mockito.Mockito" factory-method="mock" >
<constructor-arg name="classToMock" value="com.foo.Loader" />
<constructor-arg name="defaultAnswer">
<util:constant static-field="org.mockito.Mockito.RETURNS_DEEP_STUBS"/>
</constructor-arg>
</bean>
您可能需要添加xml名称空间xmlns:util="http://www.springframework.org/schema/util"
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。