J'essaie d'ajouter loginfacebook pour mon application. Mais quand j'ai ajouté un référentiel qui est nécessaire pour le faire. Cela a causé une erreur. AndroidJUnit4 ne peut pas résoudre maintenant.
ExampleInstrumentedTest.Java
package com.example.user.enyatravelbataan;
import Android.content.Context;
import Android.support.test.InstrumentationRegistry;
import Android.support.test.runner.AndroidJUnit4;
import org.junit.Test;
import org.junit.runner.RunWith;
import static junit.framework.Assert.assertEquals;
import static org.junit.Assert.*;
/**
* Instrumentation test, which will execute on an Android device.
*
* @see <a href="http://d.Android.com/tools/testing">Testing documentation</a>
*/
@RunWith(AndroidJUnit4.class)
public class ExampleInstrumentedTest {
@Test
public void useAppContext() throws Exception {
// Context of the app under test.
Context appContext = InstrumentationRegistry.getTargetContext();
assertEquals("com.example.user.enyatravelbataan",
appContext.getPackageName());
}
}
et ceci est ma construction: gradle (app)
apply plugin: 'com.Android.application'
Android {
compileSdkVersion 24
buildToolsVersion "24.0.3"
useLibrary 'org.Apache.http.legacy'
repositories {
mavenCentral()
}
defaultConfig {
applicationId "com.example.user.enyatravelbataan"
minSdkVersion 16
targetSdkVersion 24
versionCode 1
versionName "1.0"
testInstrumentationRunner "Android.support.test.runner.AndroidJUnitRunner"
multiDexEnabled true
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
}
}
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile(name: 'wikitudesdk', ext: 'aar')
// compile 'org.Apache.httpcomponents:httpclient:4.5'
// compile 'org.Apache.httpcomponents:httpcore:4.4.1'
compile files('libs/MD5Simply.jar')
compile files('libs/GenAsync.1.2.jar')
compile 'com.facebook.Android:facebook-Android-sdk:[4,5)'
compile 'com.Android.support:appcompat-v7:24.2.1'
compile 'com.Android.support:multidex:1.0.0'
compile 'com.google.Android.gms:play-services:9.8.0'
compile 'com.google.Android.gms:play-services-location:9.8.0'
compile 'com.google.Android.gms:play-services-appindexing:9.8.0'
compile 'com.Android.support:cardview-v7:24.2.1'
compile 'com.squareup.picasso:picasso:2.5.2'
compile 'com.Android.support:design:24.2.1'
compile 'com.Android.volley:volley:1.0.0'
compile 'com.Android.support:support-v4:24.2.1'
testCompile 'junit:junit:4.12'
}
repositories {
flatDir {
dirs 'libs'
}
}
apply plugin: 'com.google.gms.google-services'
Essayer
androidTestCompile 'com.Android.support:support-annotations:23.1.0'
androidTestCompile 'com.Android.support.test:runner:0.4.1'
androidTestCompile 'com.Android.support.test:rules:0.4.1'
Ajouter la section des dépendances ci-dessus
configurations.all {
resolutionStrategy.force 'com.Android.support:support-annotations:23.1.0'
}
Une autre chose importante (qui a fait surface pour moi) est de vérifier si vous avez changé le type de construction pour les tests - qui serait l’option testBuildType
dans le build.gradle
de votre module.
Si vous l'avez changé (comme je l'ai fait), alors avant de modifier un test Android:
testBuildType
GradlePour exécuter l'application normalement à nouveau, vous devrez évidemment revenir à «débogage», je suppose.
Remarque: Même si cela résout le problème principal décrit dans la question, je cherche toujours un moyen de prendre en charge les types de construction personnalisés pour les tests Android, mais aussi d'autoriser les types de construction de débogage; Mon objectif ultime est de laisser CI exécuter les tests avec un type de construction spécial, tout en laissant les développeurs les exécuter en mode "débogage". Donc, si quelqu'un a une idée sur la façon de réaliser cela, la section commentaires est la vôtre. :)
Pour moi, c’est parce que certaines importations androidTestImplementation
n'étaient pas à jour dans build.gradle. Après que je les ai mis à jour all avec la version la plus récente, l'erreur a disparu.
Remarque:
Mon projet comportait plusieurs modules et je devais les mettre à jour dans every module.
Ajoutez simplement compile "com.Android.support.test:runner:1.0.1"
à votre Gradle.