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

- [Refactoring] ReSharper pour Visual Studio 2010 (Preview) par Thomas Jaskula le il y a 2 heures et 45 minutes

- [Refactoring] Analyser vos exceptions avec ReSharper Exceptional par Thomas Jaskula le il y a 3 heures et 59 minutes

- SharePoint 2007 : patterns & practices SharePoint Guidance par Philippe Sentenac [MVP SharePoint] le il y a 17 heures et 39 minutes

- [Visual Studio 2010] Les tests cases c’est bien, mais je vais devoir tout réécrire ? par Etienne Margraff le il y a 18 heures et 35 minutes

- MVP[Gribouillon].AddYear par The Grib's Lair [Sébastien PICAMELOT - MVP SharePoint] le il y a 18 heures et 50 minutes

- Clinique INSIA - Projet de fin d’Etudes (Silverlight 3 MVVM et OutOfBrowser, WCF, TFS) - Part 1 par David REI le 07-02-2009, 23:38

- C’est la crise ? Bah pourquoi cramer du budget pub alors ? par Nix's Blog le 07-02-2009, 15:31

- Soyons MVP ! par TheSaib .NET blog le 07-02-2009, 12:15

- SharePoint : Gestion des Erreurs 6398, 7076 et 6482 par Blog Technique de Romelard Fabrice le 07-02-2009, 11:53

- EF avec WPF par Matthieu MEZIL le 07-02-2009, 10:18