Le titre n'est probablement pas très clair. J'ai l'exemple suivant à l'esprit:comment exprimer le résultat d'une action dans BDD/TDD
Un objet Authenticator authentifie un utilisateur en utilisant des informations d'identification. Il retourne un objet AuthResult. Cet objet AuthResult indique que l'authentification a réussi, ou qu'elle a échoué (et si oui, pourquoi elle a échoué, par exemple, le nom d'utilisateur n'a pas été trouvé).
Comment puis-je exprimer cela dans un test? 'testShouldReturnAuthObjectWithStatusSuccessOnValidLogin'?
Entre Nous disons que l'Authenticator utilise d'autres classes avec des responsabilités spécifiées pour effectuer un certain travail (par exemple se connecter à une base de données). Si j'écris des tests pour ces classes, cela signifie-t-il que je donne des détails sur l'implémentation de 'complete-authentication-package'? – koen
Non, je parle juste du nom de la méthode. Et vous devriez probablement vous moquer de ces autres classes si vous voulez le tester unitaire. Ensuite, vous testez ces autres classes isolément et voyez si elles fonctionnent isolément –
Un 'package d'authentification complet' serait un test d'intégration. Vous testeriez si ces classes sont bien câblées et si le processus dans son ensemble fonctionne. Dans ce cas, il est encore plus recommandé que son nom ne soit pas spécifique à l'implémentation. –