我這裏有一個很好的報告問題:Robolectric =的Mockito:無法創建模擬或間諜因爲的Mockito:dexcache == NULL
但是該解決方案不起作用。
我使用Robolectric,甚至當我嘗試設置dexmaker緩存位置:
@Before
public void setUp()
{
System.setProperty("dexmaker.dexcache", RuntimeEnvironment.application.getCacheDir().getPath());
}
錯誤更改
了java.lang.RuntimeException:顯示java.lang.NullPointerException
at com.android.dx.DexMaker.generateClassLoader(DexMaker.java:366)
at com.android.dx.DexMaker.generateAndLoad(DexMaker.java:439)
at com.android.dx.stock.ProxyBuilder.buildProxyClass(ProxyBuilder.java:264)
at com.android.dx.mockito.DexmakerMockMaker.createMock(DexmakerMockMaker.java:56)
at org.mockito.internal.util.MockUtil.createMock(MockUtil.java:33)
at org.mockito.internal.MockitoCore.mock(MockitoCore.java:59)
at org.mockito.Mockito.spy(Mockito.java:1368)
你有什麼想法可以讓我使用Robolectric創建模擬或間諜對象嗎?
注:如果我不使用Robolectric和使用常規ActivityInstrumentationTestCase2
和@RunWith(AndroidJUnit4.class)
我可以創建模擬和間諜對象...
這個問題1.9的Mockito
[Robolectric +的Mockito]的可能的複製(http://stackoverflow.com/questions/35970899/robolectric-mockito) –
我的問題是不同的,解決的辦法是不同。 – Aggressor
您的解決方案不同,因爲Mockito在1.9.5之前不支持dexmaker。如果你確保你不使用mockito-android,你可以使用任何你喜歡的版本。 –