Android上的Mockito Dexmaker

我试图在我的Android项目中使用Mockito。
我发现非常好的教程,处理它:http://www.paulbutcher.com/2012/05/mockito-on-android-step-by-step/

基本上它使用新版本的Mockito Dexmaker,一切正常工作。
但是,当我试图模拟一些Android的具体对象,即:

Context context = mock(Context.class);

我收到此异常:

java.lang.IllegalArgumentException: 
    dexcache == null (and no default could be found; 
    consider setting the 'dexmaker.dexcache' system property)
at com.google.dexmaker.DexMaker.generateAndLoad(DexMaker.java:359)
at com.google.dexmaker.stock.ProxyBuilder.buildProxyClass(ProxyBuilder.java:252)
at com.google.dexmaker.mockito.DexmakerMockMaker.createMock(DexmakerMockMaker.java:54)
at org.mockito.internal.util.MockUtil.createMock(MockUtil.java:26)

任何想法如何解决它?

从@ rjath的@ MrChaz的回答的答案,这对我更好:

System.setProperty(
    "dexmaker.dexcache",
    getInstrumentation().getTargetContext().getCacheDir().getPath());

我把它放在我的setUp()方法。

http://stackoverflow.com/questions/12267572/mockito-dexmaker-on-android

本站文章除注明转载外,均为本站原创或编译
转载请明显位置注明出处:Android上的Mockito Dexmaker