Bienvenue à Blogs CodeS-SourceS Identification | Inscription | Aide

Azra [Florent Santin]

.Net, X'Net, aucun lien de parenté V2.0

Actualités

  • MSN Alerts
    View Florent Santin's profile on LinkedIn
Rosario - VS Team Dev - Tests unitaires impactés

Voici une autre des nouveautés actuellement présente dans la CTP 12 de Rosario (Team System VNext), qui cible ce coup-ci les versions Developpeur et Testeur du produit: le concept de tests unitaires impactés.

Dans VS 2005 / 2008, la fenêtre "Test View" affiche, pour une solution .NET donnée, la liste des tests MSTest présents dans les différents projets de test.

RosarioTestImpacted1

Depuis cette fenêtre il est possible de sélectionner un ou plusieurs tests, de les grouper (par classe cible testée, par namespace, par projet...), et d'initier leur exécution en mode classique ou en débug.

rosariotestimpacted2

En 2005 / 2008, dans une approche de développement accompagnée de tests unitaires, il est donc requis, à chaque modification d'un bout de code, d'exécuter l'ensemble des tests le validant. Sur un petit projet, il est aisé l'intégrale des tests, mais sur les projets volumineux possédant quelques centaines de tests... :

  • Cela peut être une perte de temps considérable de les faire exécuter tous par l'environnement de développement
  • Dans le cas d'une sélection "manuelle" des tests à exécuter, il est possible d'en oublier certains, et ceux-ci perdent leur intérêt
  • En travaillant en mode "intégration continue" et en exécutant les tests unitaires sur un serveur de build de manière automatique après chaque check-in, les allers retours avec le contrôleur de source pour corriger en cas de problème sont aussi une perte de temps considérable

La solution dans VS Rosario se place au niveau de l'intelligence de l'environnement de développement, toujours dans la fenêtre "Test View" ou la notion de "Test impacté" fait son apparition. A chaque modification d'un bout de code, Rosario identifie ainsi automatiquement la liste des tests le validant et les groupe sous l'intitulé "Recommanded".

Par exemple, suite à une micro modification dans le code, la liste de tests unitaires présente dans mon projet devient automatique groupée de la sorte:

rosariotestimpacted3

Au vu de de la modification apportée au code, Visual Studio recommande donc l'exécution de 3 tests.

rosariotestimpacted4

Il est ainsi nécessaire de sélectionner les trois (ou leur groupe) et de les exécuter pour obtenir le résultat suivant (cliquez pour agrandir l'image):

rosariotestimpacted5

Dans cet exemple la, 2 tests ont réussit, ils sont donc automatiquent regroupés sous l'intitulé "Verified", vu qu'il n'est plus nécessaire de les exécuter (si le code est de nouveau modifié, il reviendront bien sur dans le groupe "Recommanded"). Le 3eme test a part contre échoué, de ce fait, il reste dans l'état "Recommended" car il est nécessaire de le rejouer (et de modifier le code) jusqu'a ce qu'il fonctionne.

Avec Rosario, il est donc ainsi possible de n'exécuter que les tests unitaires utiles. Attention, l'intégralité des tests doivent toujours être joués régulièrement, mais ce travail entre très bien dans le rôle du serveur de compilation Team Build, chargé de le faire à chaque archivage ou chaque nuit!

Posted: mardi 13 mai 2008 09:05 par azra
Ce post vous a plu ? Ajoutez le dans vos favoris pour ne pas perdre de temps à le retrouver le jour où vous en aurez besoin :

Commentaires

KooKiz a dit :

Appétissant tout ça, vivement la version finale :)

# mai 13, 2008 15:43
Les commentaires anonymes sont désactivés

Les 10 derniers blogs postés

- ssdl view et TPT par Matthieu MEZIL le il y a 23 heures et 40 minutes

- L'injection SQL n'est PAS un problème QUE pour les développeurs web ! par CoqBlog le 07-05-2008, 01:08

- Un outil pour réaliser des animations WPF basées sur des équations de Bézier par Perspective le 07-04-2008, 21:45

- Sandcastle et CodePlex : le verdict par CoqBlog le 07-04-2008, 20:53

- ssdl view et TPH par Matthieu MEZIL le 07-04-2008, 19:12

- Webcasts sur le Parallel Framework disponibles par Matthieu MEZIL le 07-04-2008, 17:26

- [Silverlight] - Comprendre et Débuter avec Silverlight par Danuz le 07-04-2008, 12:41

- SharePoint : Nouvel article sur l'exportation et Importation de sites SharePoint par Blog Technique de Romelard Fabrice le 07-04-2008, 01:00

- ImagineCup 2008 Final in Paris: Day 1 par Richard Clark le 07-03-2008, 22:48

- PowerShell : Comment utiliser un ENUM .NET dans un script PowerShell par Blog Technique de Romelard Fabrice le 07-03-2008, 18:09