Ich versuche eine Testklasse in Android Studio zu implementieren, um einen Test auf einem DBAdapter durchzuführen. Da ich den Test auf meinem Mobiltelefon ausführen muss, um die Datenbank zu verwenden, habe ich einen Instrumentation Unit Test erstellt (weil ich versucht habe, es nur mit einem Komponententest zu tun, aber ich muss die Datenbank verwenden und so, und diese werden nur lokal ausgeführt).Android Studio Junit testet Paket org.junit existiert nicht
Das Problem ist, dass, wenn ich versuche, die Testklasse zu laufen, als Laufvorrichtung meines Mobiltelefon, der Compiler die folgenden Fehler führt:
error: package org.junit does not exist
Ich habe für eine solutione suchen, aber ich keine gefunden.
Dies ist mein Test-Klasse (nur das Skelett):
import org.junit.Test;
import android.support.test.runner.AndroidJUnit4;
import static org.junit.Assert.*;
public class DbAdapterTest {
@Test
public void testCreateSeries() throws Exception {
}
}
Und dies ist das build.gradle Skript:
apply plugin: 'com.android.application'
android {
compileSdkVersion 23
buildToolsVersion "23.0.2"
defaultConfig {
applicationId "com.w2w.whattowatch"
minSdkVersion 15
targetSdkVersion 23
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
testOptions {
unitTests.returnDefaultValues = true
}
}
dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.android.support:appcompat-v7:23.1.1'
compile 'com.android.support:design:23.1.1'
testCompile 'junit:junit:4.12'
testCompile "org.mockito:mockito-core:1.9.5"
}
ich auch ein anderes Problem. Wie Sie sehen können, habe ich importiert auch dies:
import android.support.test.runner.AndroidJUnit4;
Aber auch vor dem Laufen, heißt es von „Runner“, dass „das Symbol nicht lösen können“. Ich habe den TestInstrumentationRunner auf build.gradle hinzugefügt, funktioniert aber immer noch nicht.
Sie Unit-Tests zu schreiben sind ('/ src/test') oder ui Tests (' src/androidTest')? –
Ja, sie sind instrumentierte Komponententests, damit sie ausgeführt werden können, müssen sie in src/androidTest sein, entsprechend: http://developer.android.com/intl/es/training/testing/start/ index.html # run-instrumentierte-tests – gascon95
Hier finden Sie: https://github.com/googlesamples/android-testing/tree/master/ui/espresso/BasicSample. Verwenden Sie die Junit-Einheit für Komponententests. –