首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否可以在RobolecticTestRunner中运行使用JMockit的测试?

是否可以在RobolecticTestRunner中运行使用JMockit的测试?
EN

Stack Overflow用户
提问于 2014-04-15 00:22:09
回答 1查看 601关注 0票数 1

在正常情况下,在运行单元测试时,使用JMockit只要求在JMockit JAR之前声明JUnit JAR。

在使用RobolecticTestRunner运行的测试中使用JMockit模拟时,我遇到了以下StackOverflowError。

代码语言:javascript
复制
java.lang.StackOverflowError: null
    at java.lang.ThreadLocal.getMap(ThreadLocal.java:213)
    at java.lang.ThreadLocal.get(ThreadLocal.java:144)
    at mockit.internal.mockups.MockState.update(MockState.java:54)
    at mockit.internal.mockups.MockStates.updateMockState(MockStates.java:93)
    at mockit.internal.state.TestRun.updateMockState(TestRun.java:160)
    at org.junit.runners.model.FrameworkMethod.validatePublicVoidNoArg(FrameworkMethod.java)
    at mockit.integration.junit4.internal.MockFrameworkMethod.validatePublicVoidNoArg(MockFrameworkMethod.java:46)
    at sun.reflect.GeneratedMethodAccessor12.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at mockit.internal.util.MethodReflection.invokeWithCheckedThrows(MethodReflection.java:106)
    at mockit.internal.mockups.MockMethodBridge.callMock(MockMethodBridge.java:85)
    at mockit.internal.mockups.MockMethodBridge.invoke(MockMethodBridge.java:44)
    at org.junit.runners.model.FrameworkMethod.validatePublicVoidNoArg(FrameworkMethod.java)
    at mockit.integration.junit4.internal.MockFrameworkMethod.validatePublicVoidNoArg(MockFrameworkMethod.java:46)
    at sun.reflect.GeneratedMethodAccessor12.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:606)
    at mockit.internal.util.MethodReflection.invokeWithCheckedThrows(MethodReflection.java:106)
    at mockit.internal.mockups.MockMethodBridge.callMock(MockMethodBridge.java:85)
    at mockit.internal.mockups.MockMethodBridge.invoke(MockMethodBridge.java:44)
    at org.junit.runners.model.FrameworkMethod.validatePublicVoidNoArg(FrameworkMethod.java)

在使用RobolectricTestRunner运行单元测试时,有没有什么特殊的配置可以让JMockit正常工作?下面的讨论让它看起来像是带有1.5版的JMockit

RobolectricTestRunner's HelperTestRunner having trouble invoking Jmockit?

这篇文章为创建一个调用启动的自定义RobolectricTestRunner提供了一个建议。initializeIfNeeded()

can jmockit and robolectric coexist?

然而,这两个讨论都没有帮助我找到解决方案。任何建议都将不胜感激。谢谢。

EN

回答 1

Stack Overflow用户

发布于 2014-08-02 00:55:42

我能够使用Robolectrial2.3和JMOCKIT1.8(现在不要使用更高版本的JMockit )实现这一点。

也许可以试试这个?

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

https://stackoverflow.com/questions/23065171

复制
相关文章

相似问题

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