Mockito mocked object suddenly throws NPE(Mockito 模拟对象突然抛出 NPE)
问题描述
我有一个模拟:
static MyGroovyBasedHttpClient createClient(){
MyGroovyBasedHttpClient client = mock(MyGroovyBasedHttpClient.class);
Answer<SimpleResponse> methodAnswer = createGenericAnswer();
when(client.myMethod(anyString(), anyInt(),anyString())).thenAnswer(methodAnswer);
return client;
}
我有方法调用
def response = client.myMethod(stringParam1, intParam2, stringParam3)
我在 client.myMethod 调用上得到了 NPE如果我这样做了
And I get NPE on client.myMethod invocation If i do
println client // mock for MyGroovyBasedHttpClient with hashcode
所以 100% 客户端已初始化且不为 NULL我什至对模拟组件不为空的断言提出了质疑.我也对静态 MyGroovyBasedHttpClient createClient() 吸烟烟雾检查模拟客户端确实返回了我的自定义答案
so 100% client is initialized and not NULL I even hace smoke assertions that mocked components are not null. Also I have smoke on static MyGroovyBasedHttpClient createClient() Smoke checks that mocked client does return my custom Answer
如何调试此类问题?
更新:看起来这是我的问题:https://code.google.com/p/mockito/issues/detail?id=303
UPD: Look like this is my problem: https://code.google.com/p/mockito/issues/detail?id=303
推荐答案
mockito和groovy有问题,需要额外的依赖或者只能mock接口.
There is a problem with mockito and groovy, you need additional dependency or you can mock only interfaces.
欲了解更多信息,请访问:https://github.com/cyrusinnovation/mockito-groovy-support
For more info visit : https://github.com/cyrusinnovation/mockito-groovy-support
关于 groovy 类的 mockito 问题的问题 303:https://code.google.com/p/mockito/issues/detail?id=303
Issue 303 about mockito problem with groovy classes : https://code.google.com/p/mockito/issues/detail?id=303
这篇关于Mockito 模拟对象突然抛出 NPE的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Mockito 模拟对象突然抛出 NPE


基础教程推荐
- Spring AOP错误无法懒惰地为此建议构建thisJoinPoin 2022-09-13
- 使用堆栈算法进行括号/括号匹配 2022-01-01
- 如何对 Java Hashmap 中的值求和 2022-01-01
- REST Web 服务返回 415 - 不支持的媒体类型 2022-01-01
- 存储 20 位数字的数据类型 2022-01-01
- Struts2 URL 无法访问 2022-01-01
- RabbitMQ:消息保持“未确认"; 2022-01-01
- 无法复制:“比较方法违反了它的一般约定!" 2022-01-01
- 修改 void 函数的输入参数,然后读取 2022-01-01
- 问题http://apache.org/xml/features/xinclude测试日志4j 2 2022-01-01