web-dev-qa-db-fra.com

!!! JUnit version 3.8 ou ultérieure attendue

Mon Android studio a un module d'application qui est Android dépendant du framework, j'ai créé un nouveau module appelé domaine et il ne contient que Java classes et quelques classes de test.

Dans le fichier build.gradle de ce module, j'ai ajouté des bibliothèques junit et mockito à des fins de test comme suit:

apply plugin: 'Java'
sourceCompatibility = 1.7
targetCompatibility = 1.7
dependencies {
    testCompile 'junit:junit:4.11'
    testCompile 'org.mockito:mockito-core:1.9.5'
    compile project(':common')
    compile project(':model')
    //test dependencies
}

Mais Android Studio me donne !!! JUnit version 3.8 or later expected message d'erreur chaque fois que j'essaie d'exécuter la classe de test.

Toutes les solutions suggérées à ce problème consistent à ouvrir la structure du projet | Modules | Dépendances, et déplacez le junit-4.7.jar vers le haut, afin qu'il vienne avant Android 1.6 Platform dans le chemin de classe.

En fait, j'ai essayé d'implémenter cette solution mais le problème existe toujours. Image of my dependencies structure

Une idée sur la façon de résoudre ce problème?

24
Fshamri

Je l'ai déjà résolu tout à l'heure. Cela peut vous aider ... peut-être. Une petite instruction:

  1. Allez dans Exécuter -> Modifier les configurations
  2. Supprimer la configuration JUnit sur le panneau gauche

enter image description here

44
voronnenok

J'ai réussi à le résoudre en modifiant simplement l'iml du projet et en déplaçant l'ordre d'enrty pour junit, dans mon cas:

<orderEntry type="library" exported="" scope="TEST" name="junit-4.13-SNAPSHOT" level="project" />

jusqu'à être la première commandeEntrée après </content>

8
Rotem Slootzky

Je l'avais mais la raison était différente ... J'avais par inadvertance défini ma variante de build sur Release et je n'avais aucune information de signature spécifiée, donc rien ne pouvait être construit et exécuté sur l'appareil.

L'erreur cryptique qu'elle m'a donnée était la même lorsque j'ai essayé d'exécuter les tests d'intégration ... je n'ai pas remarqué que l'application était également désactivée: - P Réglez-la sur Debug et cela a bien fonctionné.

0
kenyee