首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >GenericSignatureFormatError混合Guice和JMockit

GenericSignatureFormatError混合Guice和JMockit
EN

Stack Overflow用户
提问于 2015-01-15 20:24:05
回答 1查看 109关注 0票数 1

Guice和JMockit似乎相处得不好.

下面的测试抛出GenericSignatureFormatError。为什么?

代码语言:javascript
复制
@RunWith(JMockit.class)
public class GuiceAndJMockitTest {

    public interface Foo {
    }

    @Test
    public void guiceAndJMockitGetAlong(@Mocked final Foo foo) {
        Guice.createInjector(new AbstractModule() {
            @Override
            protected void configure() {
                bind(Foo.class).toInstance(foo);
            }
        });
    }

}

谢谢

JMockit 1.13

Guice 3.0

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-01-16 17:16:02

这似乎是由于实现给定接口的JMockit生成的类中存在一些无效的“泛型信息”。因此,显然是JMockit中的一个bug;我将对此进行调查。

但是,如果您想模拟实现接口并由Guice注入的对象,我建议使用@Capturing而不是@Mocked。这样,实现声明的模拟类型的任何类也会被模拟。而且不需要创建特定于测试的Guice注入器;只需使用与生产相同的Guice模块即可。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27972352

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档