J'ai un projet géré par Maven qui utilise Mockito moqueur dans ses tests unitaires. Je peux exécuter tous les tests dans une build Maven, et ils courent sans erreur (et passent!). Toutefois, si je clique avec le bouton droit sur une seule fonction de test et que vous choisissez "Exécuter en tant que - JUnit Test", j'obtiens une exception java.lang.NoSuchMethodError: org.mockito.Mockito.doAnswer(Lorg/mockito/stubbing/Answer;)Lorg/mockito/stubbing/Stubber;
. Bien sûr, la méthode "manquante" est là si je regarde les sources, et comme je l'ai dit, les tests compilent et exécutent à partir de la ligne de commande. Le meilleur que je puisse penser est si Eclipse essaye de "m'aider" en fournissant un artefact de Mockito démodé (j'utilise 1.8.5 dans mes dépendances de Maven) pour le plugin de JUnit, semblable à comment le plugin de Maven peut vous coller avec une version bizarre de l'exécution de Maven pour certaines tâches.Pourquoi mon test d'unité basé sur Mockito ne peut-il pas être exécuté dans Eclipse?
Est-ce le problème? Est-ce autre chose? Puis-je résoudre ce problème? ETA: Apparemment, cela peut se rapporter à known issue. Il y a de fortes chances que cela provienne d'avoir plusieurs versions de Mockito dans mon classpath (merci, Maven: - /). J'ai l'impression que ma maison est en ordre - Eclipse peut faire les tests maintenant - mais malheureusement, le virus a mordu mon Hudson. Je dois trouver comment enlever le vieux JAR du classpath là aussi.
Joli appel sur les multiples versions; J'ai été brûlé par cela assez souvent, je ne sais pas pourquoi ce n'est pas l'une des premières choses que je vérifie. Je reconstruis maintenant acceptera si cela le fixe: D – Coderer
Cela a fonctionné pour moi. Merci! – krodmannix
J'ai eu ce même problème après l'installation de poweremock, et c'est l'extension mockito. powermock-api-mockito-1.6.4 est livré avec mockito-1.10.19, et j'avais mockito-all-1.9.5 dans mes dépendances pom. La mise à jour du pom pour refléter la version incluse de powermock a résolu ce problème. –