Si vous écrivez une classe de test commedes méthodes Détection écrasement de test rubis
class MyTest < Test::Unit::TestCase
def setup
end
def test_1
flunk
end
def test_1
assert true
end
end
la première test_1 est ignorée. Bien que cela ressemble à une erreur stupide, cela peut arriver avec la programmation copier-coller. En dehors de l'exécution
grep test test_me.rb | wc
et en le comparant avec le nombre unité d'essai des tests Says a été exécuté, ou en utilisant rcov ou chahuter, ou en cours d'exécution avec -w, comment pouvez-vous détecter ces problèmes?
De même, existe-t-il un moyen de spécifier que les méthodes de test ne doivent pas être remplacées?
Modifier: La méthode testée possédait un paramètre avec 6 valeurs possibles et le testeur voulait tester chaque scénario. C'est pourquoi la programmation copier-coller a été utilisée. La seule alternative que je peux envisager pour un tel scénario est un tableau à six éléments de paramètres et de valeurs attendues.
Bien que ce soit utile (j'ai fait upvote), je ne pense pas que cela devrait être la réponse acceptée. La bonne chose à faire n'est pas copier et coller, ne pas valider le copier-coller. – DanSingerman
Tout le monde peut dire "Ne pas copier et coller" - comme on dit, donner de bons conseils est facile, suivre c'est la partie la plus difficile. J'apprécie les réponses qui me disent quelque chose que je ne connais pas. –