Odeurs de fixture.
Une configuration partagée construit une grande fixture « fourre-tout » couvrant les besoins de tous les tests, mais chaque test individuel n'en exploite qu'une petite partie.
Un test dont les entrées ou les résultats attendus se trouvent dans une ressource externe — un fichier, un jeu de données de base de données (seed) ou une fixture partagée — de sorte que vous ne pouvez ni comprendre ni faire confiance au test en le lisant seul.
L'optimisme sur les ressources, c'est lorsqu'un test suppose qu'une ressource externe (un fichier, un répertoire, une table de base de données, une variable d'environnement ou un point d'accès réseau) existe déjà et se trouve dans un état connu, au lieu de la provisionner et de la vérifier, ce qui fait réussir ou échouer le test de façon non déterministe.
Une classe de test initialise les champs de sa fixture dans un constructeur au lieu du hook de mise en place dédié du framework (setUp / @BeforeEach / TestInitialize), contournant le cycle de vie des tests.