java.lang.NoClassDefFoundError: android und junit test

Ich habe gesehen, dass ich nicht der einzige bin, der dieses Problem hat, aber ich finde keine richtige Antwort. Ich habe ein Android-Projekt, das ich testen möchte. Ich schaffe eine Junit-Testklasse für jede Klasse meines Projektes. Mein Problem ist, wenn ich meinen Test ausführen, habe ich folgende Fehlermeldung:

java.lang.NoClassDefFoundError: android/content/Context 

Das ist mein Klassen-Test:

  • SecurityException mit grantUriPermission beim Freigeben einer Datei mit FileProvider
  • Holen Sie sich WebView Versionsnummer für Lollipop?
  • Android-Datenspeicher - Datei vs SQLite
  • Mehrere Benachrichtigungen erhalten von GCM
  • Wie beschleunige ich Android Studio auf einem Mac
  • Was ist der Unterschied zwischen den 'Ziel' Einstellungen in der Datei 'project.properties' und dem 'android: targetSdkVersion' Tag im Manifest?
  •  public class DevicesBDDTest extends TestCase { DevicesBDD bdd; /** * @throws java.lang.Exception */ protected static void setUpBeforeClass() throws Exception { } /** * @throws java.lang.Exception */ protected static void tearDownAfterClass() throws Exception { } protected void setUp() throws Exception { super.setUp(); Context ctx = mock(Context.class); final MaBaseSQLiteInterface mockMaBaseSQLite = mock(MaBaseSQLiteInterface.class); bdd = new DevicesBDD(ctx){ @Override public MaBaseSQLiteInterface createMaBaseSQlite(Context context) { return mockMaBaseSQLite; } }; } protected void tearDown() throws Exception { super.tearDown(); } public void test() { assertEquals(1, 1); } } 

    Meine Klasse DevicesBDD braucht ein Objekt Kontext, also schaffe ich einen Mock (mit Mockito). Ich habe auch mit einem Objekt MockContext versucht, aber es funktioniert nicht.

    Dies ist mein Java Build Path:

    • mockito-all-1.9.5.jar
    • Android 2.1 -> android.jar
    • Android-Abhängigkeiten -> annotations.jar
    • Junit 3 -> junit.jar

  • Android addHeaderView verschwindet, wenn keine Elemente in ListView vorhanden sind
  • Können wir startActivityForResult vom Adapter anrufen?
  • Erstellen Observable ohne Verwendung von Observable.create
  • Fehler android.content.res.Resources $ NotFoundException: Datei aus XML-Typ Layout Ressource ID # 0x102000a
  • Android: hochwertige Bildgrößenänderung / Skalierung
  • Kann nicht Theme.AppCompat.Light für neue Android ActionBar Unterstützung finden
  • 2 Solutions collect form web for “java.lang.NoClassDefFoundError: android und junit test”

    Nicht sicher, ob ich das gleiche Problem wie du hatte, aber ich benutze gradle und aus irgendeinem Grund würden die Tests einfach nicht mehr laufen, mit dem gleichen Fehler wie du hatte. Ich habe versucht Reinigung und Wiederaufbau, aber ohne Erfolg. Nach Stunden der Frustration und dem Versuch, eine Antwort zu finden, stieß ich auf die einfache Lösung in einem GitHub-Thread:

    Ich habe dieses Problem gelöst, indem ich den Ordner "umordnen" in meinem Projekt entfernt und das Projekt neu erstellt habe.

    (dank vpetrov)

    Sie können ./gradlew clean test im Terminal laufen.

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.