java - 使用构造函数mockito模拟对象

标签 java spring web-services junit mockito

我有课

Class A {
ServiceClass serviceClass;
public A(ServiceClass  obj){
serviceClass = obj;
}
public String methodA(String i){
   String j = serviceClass.someMethod(i);
return j;
}

}

这里我有一些方法,我正在调用服务类方法,因为我已经为服务类创建了模拟对象。

ServiceClass serviceClassMock = Mockito.mock(ServiceClass.class);
A objA = new A(serviceClassMock);
@Test
public void test(){
 when(serviceClassMock.someMethod("1")).thenReturn("1");
 String j = objA.methodA("1");// here gives me wanted be invoked but not. there where 0 interaction

verify(serviceClassMock).someMethod("1");

}

最佳答案

例如:

Impl a= new Impl("ei");
Impl m = Mockito.mock(Impl.class);

when(m.someCall(Matchers.any(Object.class))).thenReturn(whereverYouWanna);

或更具体:

when(m.someCall(Matchers.eq(24)).thenReturn(whereverYouWanna);

了解您之前的模拟可能会限制您的模拟代码非常重要,我希望它对您有所帮助。

关于java - 使用构造函数mockito模拟对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24568972/

相关文章:

java - Android:从秒数转换时的日期不正确

java - 当我不知道大小时初始化二维数组

java - 使文件丢失,Eclipse

java - ENUM : EL1043E: Unexpected token. 中的 Thymeleaf 下拉菜单预期为 'rparen())' 但实际为 'lparen(()'

java - 在 JSF 中使用 foreach 循环

iphone - 使用 SudzC 传递参数

java - J2mod从保持寄存器读取不同的值

java - 如何在java中处理twilio短信状态回调

java - Liferay Delegate Servlet 无法访问 liferay 实用程序 bean

java - 在 Rally 中,如何根据 webservice v2.0 的给定条件列表在 java 中动态生成搜索查询字符串。