Si j'ai une suite de tests avec plusieurs tests, lorsque j'essaie d'exécuter un seul test unitaire, soit à partir du menu contextuel de l'éditeur de code, soit à partir de la vue JUnit, il semble insister pour toujours exécuter la suite entière, plutôt que le test unique. Existe-t-il un moyen de désactiver pour modifier ce comportement afin que je puisse demander à exécuter cela, et seulement cela, tester.
85
Réponses:
Dans l'explorateur de packages, dépliez la classe. Il devrait vous montrer toutes les méthodes. Faites un clic droit sur la méthode que vous souhaitez exécuter, puis sélectionnez Exécuter en tant que -> JUnit dans le menu contextuel (juste testé avec Eclipse 3.4.1). La sélection de «Exécuter» sur une seule entrée dans la vue des résultats JUnit pour réexécuter un test fonctionne de la même manière.
la source
Le moyen le plus rapide que je connaisse:
Si vous souhaitez exécuter tous les tests, vous pouvez ignorer les étapes 1 et 4.
la source
Dans Eclipse 3.5, vous pouvez contourner ce problème en changeant le lanceur de test en JUnit 3. Cela ne fonctionnera que pour les tests JUnit 3, pas pour les tests JUnit 4. Vous pouvez modifier le lanceur de test en procédant comme suit:
Cela peut également fonctionner dans d'autres versions.
la source
Ceci est possible dans Eclipse Indigo avec JUnit 4.8.2. Vous cliquez avec le bouton droit de la souris sur la méthode que vous souhaitez tester individuellement dans le
Outline
volet, puis sélectionnezRun As -> JUnit Test
.Vous pouvez même faire un clic droit sélectif sur un nom de méthode de test dans l'éditeur de source et sélectionner
Run As -> Junit Test
.la source
N'utilisez pas Strg+ F11mais le raccourci clavier Alt+ Shift+ X-> T.
Ensuite, Eclipse exécutera le fichier ouvert actuel en tant que test JUnit. Le bouton de lecture vert exécutera uniquement la dernière configuration d'exécution choisie.
Pour moi, cela fonctionne bien avec Alt+ Shift+ X-> T.
la source
J'ajouterai aux autres en incluant un seul moyen de clavier hautement productif qui vous permet de déboguer un seul test unitaire (méthode).
Déplacez votre curseur sur le nom de la méthode en utilisant soit
Une fois que votre curseur est sur le nom de la méthode (ou juste avant):
Après avoir exécuté le test, vous pouvez revenir à l'emplacement de votre curseur en faisant:
Alt+Back
Vous obtenez presque un comportement de type REPL en:
Ctrl+ Shift+ Upet Alt+ Shift+ X-> Tet Alt+Back
Vous pouvez également définir rapidement un point d'arrêt:
Ctrl+ Shift+B
la source
Cliquez avec le bouton droit quelque part sur le nom de la méthode de test dans le fichier et sélectionnez "Exécuter" -> "Test Junit". Je le fais tout le temps avec Kepler et JUnit 4.
la source
J'ai eu le même problème que d'autres ont eu avec Eclipse 3.4.1 et JUnit 4 test runner - je ne pouvais pas exécuter un seul test. Mais j'ai trouvé une suggestion ailleurs qui a résolu le problème. Ma classe de test étendait toujours junit.framework.TestCase. Quand j'ai arrêté d'étendre TestCase, tout fonctionnait bien et j'ai pu exécuter des tests JUnit uniques avec le testeur JUnit 4. Bien sûr, j'avais besoin que les annotations JUnit 4 utilisent des importations statiques pour les méthodes d'assertion, mais je l'avais déjà fait - je n'avais tout simplement pas supprimé l'héritage TestCase.
la source
Si vous avez plusieurs tests dans plusieurs fichiers et que vous souhaitez exécuter uniquement les tests dans un fichier particulier, vous pouvez cliquer avec le bouton droit sur ce fichier et sélectionner exécuter en tant que -> test junit. Maintenant, si vous voulez exécuter un seul test, contenu dans un fichier avec de nombreux tests, je suppose (je n'ai pas installé eclipse ici) que la vue Outline listera toutes les méthodes de test pour un fichier, et vous pourrez probablement cliquez avec le bouton droit de la souris sur une méthode de test unique et exécutez-la en tant que test JUNit.
J'espère que cela aide.
la source
Pour exécuter une seule méthode de test.
Dans (l'explorateur de packages ou l'explorateur de projet) dépliez la classe. Il devrait vous montrer toutes les méthodes. Cliquez avec le bouton droit sur la méthode que vous souhaitez exécuter, puis sélectionnez Exécuter en tant que -> JUnit dans le menu contextuel.
la source
Pour moi, cela ne fonctionne pas non plus dans Eclipse 3.4.2, bien que cela ait fonctionné dans les versions précédentes (j'ai essayé d'exécuter une méthode unique à partir de l'explorateur de packages et un test junit unique à partir de la vue Junit)
la source
Je suis d'accord avec le point à propos de 3.4.2 ne fonctionnant plus comme il le faisait dans les versions précédentes. Avant, vous pouviez cliquer avec le bouton droit sur un seul test dans un groupe de tests à partir de la vue JUnit et exécuter uniquement ce test. Dans la dernière version, il insiste pour toujours les exécuter tous. Certes, la vue exécute le test sur lequel vous avez cliqué en premier et vide le reste dans un rollup appelé "Tests sans racine". Si quelqu'un comprend cela, j'aimerais savoir comment le contourner.
la source
En lisant certains des commentaires ici, il semble que vous pourriez être intéressé à exécuter les tests pour le code que vous modifiez au fur et à mesure que vous le modifiez, sans perdre de vue le code sur lequel vous travaillez. Il existe un plugin eclipse pour faire exactement cela. Voir infinitest .
la source