У меня есть хорошо сообщается вопрос здесь:Robolectric = Mockito: Не удается создать Mock или Spy В 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)
У вас есть идеи, которые позволят мне создавать объекты Mock или Spy с помощью Robolectric?
Примечание: Когда я не использую Robolectric и использовать обычный ActivityInstrumentationTestCase2
и @RunWith(AndroidJUnit4.class)
я могу создать Мок и Spy объектов ...
Этот вопрос возник после того, как Mockito 1.9
Возможный дубликат [Robolectric + Mockito] (http://stackoverflow.com/questions/35970899/robolectric-mockito) –
Моя проблема отличается и решение другой. – Aggressor
Ваше решение отличается от того, что Mockito не поддерживал dexmaker до 1.9.5. Если вы убедитесь, что вы не используете mockito-android, вы можете использовать любую версию, которую хотите. –