Odeurs d'assertion.
Un test entasse de nombreuses assertions non documentées dans une seule méthode : lorsqu'il échoue, impossible de savoir quelle assertion s'est déclenchée ni pourquoi — vous devez jouer à la roulette.
Un Eager Test vérifie plusieurs méthodes ou comportements distincts de l'unité testée dans une seule méthode de test, au lieu de se concentrer sur un seul comportement.
Une assertion redondante compare une valeur à elle-même, ou à un littéral qui lui est égal par construction : son résultat est donc figé et elle ne peut jamais réellement échouer ni détecter une régression.
Une méthode de test qui exerce le code mais ne contient aucune assertion : elle réussit tant que rien ne lève d'exception, ce qui laisse son objectif réel et ce qu'elle vérifie totalement inconnus.
Une seule méthode de test vérifie plusieurs fois la même condition — en répétant une assertion identique ou en revérifiant une logique équivalente — au lieu de supprimer la vérification redondante ou de répartir les cas distincts dans leurs propres tests ciblés.
Un test vérifie le comportement en comparant la représentation textuelle d'un objet (toString(), JSON.stringify(), HTML rendu) à un littéral de chaîne attendu, couplant ainsi le test à un formatage accessoire plutôt qu'aux valeurs qui comptent réellement.