Il m'est très courant de faire des surcharges pratiques pour les méthodes. Voici un exemple de quelque chose que je pourrais faire:Dois-je dupliquer des tests pour des surcharges de commodité?
public void Encode(string value) {
Encode(value, DefaultEncoding);
}
public void Encode(string value, Encoding encoding) {
// ...
}
Je commence à accorder plus d'attention aux tests unitaires et les méthodes d'essai comme celui-ci présente quelques obstacles que je ne suis pas sûr que je me fais confiance à seule approche. Le premier et le plus important problème est de savoir si je devrais dupliquer les tests pour les deux surcharges. Par exemple, les deux méthodes doivent lancer ArgumentNullException si la valeur est null; Est-il plus correct de reconnaître être être une logique différente et d'écrire deux tests ou est-il préférable de supposer que les surcharges de commodité n'ont pas de logique propre?
J'ai aussi un problème secondaire. Mon schéma de nommage est le même que celui de Roy Osherove: "MemberName_State_ExpectedResult". Si je duplique des tests, alors j'ai des noms contradictoires sans introduire une convention de nommage bizarre. Comment gérez-vous cela si vous dupliquez des tests?
+1 sur les deux comptes. Pour un moyen simple de vérifier le comportement de la méthode pratique, voir ma réponse à cette question. –