Est-il possible de synchroniser des cas de test JUnit avec les classes sous des tests dans Eclipse?

StackOverflow https://stackoverflow.com/questions/1189744

Question

Je sais qu'il est possible de créer un TestCase ou GroupTest avec l'assistant au sein JUnit, mais comment peut-on synchroniser le code après la classe sous le test a été modifié, comme la modification de la signature de la méthode ou des méthodes nouvellement ajoutés. Je voudrais mes TestCases pour pouvoir synchroniser (supprimer ou ajouter) ces méthodes ont été changés / paramètres / signatures de méthode dans mes TestCases.

J'ai essayé une recherche sur Google en vain, peut-être il y a un plugin Eclipse pour cela?

Était-ce utile?

La solution

Tests qui ont une relation de 1 à 1 avec la structure du code de production est une odeur de test. Il est beaucoup mieux pour les tests à écrire comme une spécification du comportement du système (~ un test par comportement), au lieu d'avoir des tests générés en fonction du code de production (~ un test par méthode).

http://blog.daveastels.com/files/BDD_Intro.pdf

  

Lorsque vous vous rendez compte qu'il est tout au sujet de spécifier le comportement et non l'écriture de tests, votre point de   décale. Tout à coup, l'idée d'avoir une classe de test pour chacune de vos classes de production est ridiculement   limitant. Et la pensée de tester chacun de vos méthodes avec sa propre méthode d'essai (dans un   1-1 relation) sera risible.

Autres conseils

Comme il a été mentionné précédemment, refactorisations tels que renomme ou se déplace seront automatiquement répercutées dans les cas de test aussi longtemps que vous refactoring en utilisant l'outil Eclipse et non en renommant manuellement par exemple.

En ce qui concerne les nouvelles méthodes, il est impossible de générer des tests automatiquement. Bien sûr, il y a quelques exceptions pour le code généré automatiquement où vous contrôlez la génération et où vous pouvez générer des cas de test ainsi, mais pour le code manuel « normal » le meilleur que vous pourriez faire était de fournir des talons (méthodes vides), et ce qui est l'utilisation dans tout cela?

Une meilleure approche est de suivre couverture de code en utilisant un outil tel que ou href="http://emma.sourceforge.net/" rel="nofollow noreferrer"> Emma , ce qui arrive d'avoir un joli plugin Eclipse qui vous permet de voir, à l'intérieur de votre code source, ce code est couvert par des tests et qui ne sont pas. Voilà donc votre rapport où vous avez besoin d'autres tests.

Si vous modifiez les signatures de méthode utilisant la refactorisation automatisée, puis les cas de test - et tout autre code qui appelle la méthode -. Automatiquement mis à jour

Pour les méthodes nouvellement ajoutées, je ne sais pas d'une façon d'avoir la classe de test mis à jour automatiquement.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top