Note that there are some explanatory texts on larger screens.

plurals
  1. POHow to use Mockito with dexmaker for Android Testing?
    primarykey
    data
    text
    <p>I am trying to get Mockito (1.9.5 rc1) working in my Android tests (using Robotium). For making it run on the DVM I put dexmaker.jar and the dexmaker-mockito.jar (v 0.9) in the classpath of the test-project.</p> <p>When run following test as an Android JUnit test in Eclipse:</p> <pre><code>package com.stampay.pos.test; import roboguice.RoboGuice; import android.app.Application; import com.jayway.android.robotium.solo.Solo; import com.stampay.pos.activities.HomeActivity; import com.stampay.pos.model.Consumer; import com.stampay.pos.util.ScannerAndroid; import static org.mockito.Mockito.*; public class HomeActivityTest extends ActivityTest&lt;HomeActivity&gt; { private Solo solo; Application app; public HomeActivityTest() { super(HomeActivity.class); } @Override public void setUp() throws Exception { solo = new Solo(getInstrumentation(), getActivity()); } @Override public void tearDown() throws Exception { solo.finishOpenedActivities(); RoboGuice.util.reset(); } public void testScan() throws Exception { ScannerAndroid scanner = (ScannerAndroid) getActivity().getScannerHelper(); Consumer mockConsumer = mock(Consumer.class); //scanner.generateResult("consumer1"); } } </code></pre> <p>I get the following stack trace: </p> <pre><code>java.lang.ExceptionInInitializerError at com.stampay.pos.test.HomeActivityTest.testScan(HomeActivityTest.java:41) at java.lang.reflect.Method.invokeNative(Native Method) at android.test.InstrumentationTestCase.runMethod(InstrumentationTestCase.java:214) at android.test.InstrumentationTestCase.runTest(InstrumentationTestCase.java:199) at android.test.ActivityInstrumentationTestCase2.runTest(ActivityInstrumentationTestCase2.java:192) at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:190) at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:175) at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:555) at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1584) Caused by: java.lang.ExceptionInInitializerError at org.mockito.internal.MockitoCore.&lt;init&gt;(MockitoCore.java:40) at org.mockito.Mockito.&lt;clinit&gt;(Mockito.java:932) ... 15 more Caused by: java.lang.ExceptionInInitializerError at org.mockito.internal.util.MockUtil.&lt;clinit&gt;(MockUtil.java:21) ... 17 more Caused by: org.mockito.exceptions.misusing.MockitoConfigurationException: Failed to load interface org.mockito.plugins.MockMaker using jar:file:/data/app/com.stampay.pos.test-2.apk!/mockito-extensions/org.mockito.plugins.MockMaker ... 15 more Caused by: java.lang.ClassNotFoundException: com.google.dexmaker.mockito.DexmakerMockMaker at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:61) at java.lang.ClassLoader.loadClass(ClassLoader.java:501) at java.lang.ClassLoader.loadClass(ClassLoader.java:461) at org.mockito.internal.configuration.ClassPathLoader.loadImplementations(ClassPathLoader.java:133) at org.mockito.internal.configuration.ClassPathLoader.findPlatformMockMaker(ClassPathLoader.java:102) at org.mockito.internal.configuration.ClassPathLoader.&lt;clinit&gt;(ClassPathLoader.java:61) at org.mockito.internal.util.MockUtil.&lt;clinit&gt;(MockUtil.java:21) at org.mockito.internal.MockitoCore.&lt;init&gt;(MockitoCore.java:40) at org.mockito.Mockito.&lt;clinit&gt;(Mockito.java:932) ... 15 more </code></pre> <p>Any suggestions? <a href="http://code.google.com/p/dexmaker/">http://code.google.com/p/dexmaker/</a> and <a href="http://code.google.com/p/mockito/wiki/ReleaseNotes">http://code.google.com/p/mockito/wiki/ReleaseNotes</a> do not provide any helpful information.</p> <p>A similar problem seems to be reported here: <a href="http://www.paulbutcher.com/2012/05/mockito-on-android-step-by-step/#comment-65955">http://www.paulbutcher.com/2012/05/mockito-on-android-step-by-step/#comment-65955</a></p> <p>UPDATE: with the .jar files from <a href="https://github.com/paulbutcher/mockito-on-android/tree/master/WarehouseManagerTest/libs">https://github.com/paulbutcher/mockito-on-android/tree/master/WarehouseManagerTest/libs</a> all works smoothly, though he uses an outdated snapshot of Mockito based on 1.9.1</p>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload