Je l'ai googlé un peu et n'ai pas vraiment trouvé la réponse dont j'avais besoin.Unité de test d'insertion/mise à jour/suppression
Je travaille sur une page Web en C# avec SQL Server et LINQ pour un client. Je souhaite que les utilisateurs puissent envoyer des messages les uns aux autres. Donc ce que je fais, c'est que je l'ai testé avec des données qui vont dans la base de données.
Le problème est que je dépend maintenant d'avoir au moins 2 utilisateurs dont je connais l'ID. De plus, je dois nettoyer après moi-même. Cela conduit à des tests unitaires assez importants qui testent beaucoup dans un test.
Disons que je voudrais mettre à jour un utilisateur. Cela signifierait que je devrais ceate l'utilisateur, le met à jour, puis le supprime. Cela fait beaucoup d'assertions dans un test unitaire et si cela échoue avec la mise à jour, je dois le supprimer manuellement.
Si je le ferais d'une autre façon, sans enregistrer les données DB, je ne serais pas pour être sûr en mesure de savoir que les données étaient présentes dans la base de données après la mise à jour, etc.
Quelle est la bonne façon pour ce faire sans avoir un test qui teste beaucoup de fonctionnalités dans un test?
"Ce que je fais, c'est que je l'ai testé avec des données en direct" C'est contradictoire. Live Data signifie que vous n'êtes pas un test unitaire, que vous effectuez des tests de convivialité, des tests de performances ou des tests d'intégration. Le test unitaire signifie «tester beaucoup de fonctionnalités par lui-même». Peut-être que vous devriez mettre à jour la question. –
Merci de l'avoir signalé, quelque chose s'est mal passé dans ma tête. J'ai édité maintenant –