Question

J'ai écrit cette classe qui fait quelques choses (c'est peut-être une violation du principe de responsabilité unique). Je me rends compte maintenant qu'une autre partie du projet a besoin d'un pièce De cette logique et la façon dont je vais l'exposer, c'est extraire une classe de mon système d'origine testé.

Je prévois de pouvoir le faire sans avoir à changer de code de test, mais quand je terminerai, vous pourriez dire que le test n'est pas un unité tester plus. Il testera la classe d'origine et la classe que j'ai extraite. En d'autres termes, j'aurai un cas de test, mais deux systèmes testés.

Suis-je censé refacter mon code de test après avoir terminé? IE: Créez un EXTRACTEDCLASSTEST et déplacez tous les tests pertinents de l'originalClasstest? Il semble que cela pourrait être un peu risqué: je peux perdre une certaine couverture dans le processus, ce n'est peut-être pas aussi simple que de déplacer un test et je finirais par réécrire un code de test que je connaissais, mais peut-être plus, etc.

D'un autre côté, si je quitte le CLASSTEST ORIGINAL tel quel, je peux voir que c'est un problème de maintenance de test. Ce sera un peu déroutant de trouver où se trouvent les tests de la classe extrait. Votre première impression sera qu'elle n'existe pas. Au fil du temps, avec de nombreux refactorings de code de production, cela pourrait devenir un problème grave.

Je suis nouveau dans TDD, donc je voudrais les conseils d'un expert. Merci!

Pas de solution correcte

Licencié sous: CC-BY-SA avec attribution
scroll top