Pourquoi mon Mockito unité de test pas en mesure d'exécuter dans Eclipse?
J'ai un Maven-gestion du projet qui utilise Mockito se moquant de ses tests unitaires. Je peux exécuter tous les tests à l'intérieur d'un Maven build, et ils s'exécuter sans erreur (et réussir!). Cependant, si je cliquez-droit sur une seule fonction, et choisir "Exécuter en tant Qu' -> JUnit Test", j'obtiens une exception java.lang.NoSuchMethodError: org.mockito.Mockito.doAnswer(Lorg/mockito/stubbing/Answer;)Lorg/mockito/stubbing/Stubber;
. Bien sûr, les "disparus" de la méthode est là, si je regarde les sources, et comme je l'ai dit que les tests de compiler et de l'exécuter à partir de la ligne de commande.
Du mieux que je peux penser est que si l'Éclipse est d'essayer de les "aider" me en fournissant une ancienne Mockito artefact (je suis en utilisant 1.8.5 dans mes dépendances Maven) pour la JUnit plugin, similaire à la façon dont le plugin Maven vous pouvez coller avec un excentrique version de Maven exécution de certaines tâches.
Est-ce le problème? Est-ce autre chose? Puis-je résoudre ce problème?
ETA: Apparemment, cela peut se rapporter à un problème connu. Il ya une bonne chance qu'il provient bien d'avoir plusieurs versions de Mockito dans mon classpath (merci, Maven :-/). Me semble que j'ai ma maison en ordre -- Eclipse peut exécuter les tests maintenant -- mais, malheureusement, le bug a mordu ma Hudson. Je dois retrouver comment faire pour supprimer l'ancien POT de l'classpath, il y a l'.
Vous devez vous connecter pour publier un commentaire.
Assurez-vous que l'unité de test classpath a la bonne mockito. Vous pouvez le vérifier à partir de la boîte de dialogue exécuter. Btw, Eclipse n'est pas livré avec mockito, alors peut-être que vous êtes d'avoir deux versions de celui-ci. Jetez un oeil à votre maven graphe de dépendance et de recherche de doublons.
J'ai eu le même problème et j'ai trouvé que j'avais à la fois "mockito-tous 1.8.x" et "mockito-core 1.9.5" dans mon classpath. J'étais censé utiliser seulement 1,9, mais en quelque sorte de l'éclipse a été mise à 1,8 avant 1.9.5 dans le classpath. J'ai enlevé 1.8.x et cela a fonctionné 😉