Sommaire

L’art du Mock Mock

Lors de l’écriture d’un test unitaire, le développeur fait souvent face à diverses dépendances qu’il doit résoudre afin de tester son petit morceau de code.

Rappelons que les tests unitaires ne doivent tester que de petites parties de code, sans se soucier de l’infrastructure en place.

Il n’est donc pas évident de tester une classe qui possède un nombre conséquent de dépendances, surtout qu’avec l’injection de dépendances fournie par ASP.NET Core, l’arbre de dépendances peut vite prendre des proportions bien trop importantes. De plus, lors de l’écriture d’un test, le développeur ne veut pas forcément tester en profondeur des fonctionnalités de log ou de connexion à la base de données : le but est de mettre à disposition des données pour le test, sans forcément se soucier d’où elles viennent tant qu’elles satisfassent le code à tester.

Le développeur a ainsi besoin d’un nouvel outil mettant en œuvre le pattern de test "objet simulacre", c’est-à-dire un mock. Un mock est un objet qui va remplacer un objet réel (dans notre cas cela peut correspondre à une des dépendances du code que l’on veut tester), mais qui va retourner un résultat que le développeur va prédéfinir. Ainsi, le développeur n’a pas besoin de se soucier ...