[VS 2008] Testons le Framework .NET (ou toute autre assembly)
Encore une nouveauté de MSTest 2008 dans ma série de posts.
Pour rappel, Visual Studio 2005 Team Test contient un générateur de test unitaire, permettant de générer un squelette de code de test à partir d'une méthode de votre projet via un simple click droit: pratique et efficace.
Avec Visual Studio 2008, le générateur de code devient plus complet et offre la possibilité de générer un squelette de test en ciblant une méthode dans un assembly, sans nul besoin donc d'avoir accès aux sources.
Mais à quoi cela peut servir?
Par exemple, à valider le fonctionnement d'un composant en écrivant un test unitaire (que l'on va pouvoir conserver) plutôt qu'en créant une application console de test jetable – un test unitaire peut servir d’output en mode dev. Ou encore, à valider qu'un composant livré correspond aux spécifications demandées et attendues avant même de commencer à l'intégrer et à l’utiliser.
Un petit exemple en image, prenons une célèbre assembly, au hasard « System.dll », et générons un test sur la méthode du Framework permettant de vérifier qu'une expression régulière "match".
1 - Pour ceci, créons un nouveau test unitaire dans un projet de tests déja créé:
2 - Dans l'assistant de génération de code, on remarque l'apparition d'un nouveau bouton "Add Assembly" permettant d'afficher autre chose que les méthodes du projet en cours de développement, cliquons dessus:
3 - Cherchons la Librairie que nous voulons tester, par exemple "System.dll" dans le répértoire du Framework:
4 - Il est maintenant possible de parcourir les namespaces de la librairie choisie et de sélectionner les méthodes pour lesquelles nous souhaitons générer du code de test unitaire, ici "Match" dans "Regex":
5 - Le squelette de code du test unitaire est généré, il ne reste plus qu'a le compléter en spécifiant les bons arguments ainsi que le résultat attendu:
Bons tests!