SlideShare a Scribd company logo
1 of 76
Download to read offline
Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   1
Périmètre de la présentation

⦿ Visual Studio 2010 Professional
⦿ Connaissance des Tests Unitaires
⦿ Concentration sur l’Outil




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   2
Les présentateurs

⦿ Alexandre MEYER
      ⦿ Concepteur-Développeur .Net
             ⦿ alexandre.meyer@soat.fr


⦿ Jade DORVIL
      ⦿ Développeur .Net
             ⦿ Jade.dorvil@soat.fr




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   3
Plan de la présentation

I. Rappel sur les Tests unitaires
II. Présentation de MS Test
III. MsTest face à la Concurrence
IV. Les plus de la licence Pro/Ultimate
V. Les apports du passage à Visual Studio 2012




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   4
Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   5
I.          Rappel sur les tests unitaires

1) Pourquoi tester?
2) Qu’est ce qu’un test unitaire ?




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   6
1. Pourquoi tester?




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   7
1. Pourquoi tester?

⦿ Raisons liés au Projet :
      ⦿ Politique
      ⦿ Risques de pertes Financières
      ⦿ Criticité
      ⦿ Produit Grand Public




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   8
1. Pourquoi tester?




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   9
1. Pourquoi tester?

⦿ Pour l’équipe :
      ⦿ Non-régression entre les commit : IC
      ⦿ Confiance améliorée entre les développeurs
      ⦿ Maintenabilité




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   10
1. Pourquoi tester?




                                                                                   11
                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
1. Pourquoi tester?

⦿ Pour vous-mêmes :
      ⦿ Valider couche par couche
        une architecture complexe
      ⦿ Faciliter le débogage
      ⦿ Connaître les performances
        ⦿Objectifs atteints ou non ?
        ⦿Amélioration de la
          performance de manière
          unitaire

                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   12
I.           Rappel sur les tests unitaires

1. Pourquoi tester?
2. Qu’est-ce qu’un test unitaire ?




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   13
2. Qu’est ce qu’un test unitaire ?

⦿ Définition :
             « le test unitaire est un procédé permettant de s'assurer
             du fonctionnement correct d'une partie déterminée
             d'un logiciel ou d'une portion d'un programme (appelée
             « unité » ou « module »). »




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   14
2. Qu’est ce qu’un test unitaire ?




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t,Diffusion Interdite
                                                                                  15
2. Qu’est ce qu’un test unitaire ?

⦿ Ses caractéristiques :
      ⦿ Taux de couverture
      ⦿ Réutilisation
      ⦿ Atomicité
      ⦿ Contexte(s) de
        départ/d’arrivée
      ⦿ Synchrone/Asynchrone



                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   16
2. Qu’est ce qu’un test unitaire ?

⦿ Son exécution:
      ⦿ Réussite
      ⦿ Temps d’exécution
      ⦿ Contexte d’exécution
             ⦿ Environnement de test
             ⦿ MTA/STA
             ⦿ Mono-Cœur/Multi-Cœurs




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   17
Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   18
Plan de la présentation

I. Rappel sur les Tests unitaires
II.         Présentation de MS Test
III. MsTest face à la Concurrence
IV. Les plus de la licence Pro/Ultimate
V. Les apports du passage à Visual Studio 2012




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   19
Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   20
II. Présentation de MsTest

1. Historique
2. Fonctionnement de l’outil




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   21
1. Son histoire



                                                                                           2010            2012
                                                                                           Version      Evolutions
                                                             2005                          améliorée    notables :
                                                 Arrivé de                                 de MsTest   - Isolation du
                                 Années 2000 MsTest (VS                                                     code
                                                2005 Team
                                 Constat : Trop System)                                                - Méthodes
                                   de code                                                             annonymes
                    1998
               Infrastructure
              xUnit (eXtreme
              Programming)

                                           Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL           Document Propriété de So@t, Diffusion Interdite
                                                                                                                        22
1. Son histoire
Concept de             Équivalent VS 2005 Description
l'infrastructure xUnit (voir les attributs ci-
                       dessous)

Test                     TestMethod                 Ce sont vos tests. Fournit la logique pour vérifier que le
                                                    résultat est bien celui prévu et vous informe si le résultat
                                                    n'est pas atteint. Imaginez qu'il s'agit de votre
                                                    « méthode ».
Contexte du test         TestClass                  Regroupement logique d'un à plusieurs tests. Imaginez
(Fixture)                                           qu'il s'agit de votre « classe ».
Suite de tests           Test List **               Regroupement logique d'un à plusieurs contextes de test.
                                                    Imaginez qu'il s'agit de votre « bibliothèque de classes ».

                                                    Remarque : Cette liste n'a pas besoin d'attribut.

Testeur                  Infrastructure de          GUI/Application de console chargée de découvrir,
                         tests unitaires VS         d'exécuter et de présenter les résultats des tests. Dans
                         2005 VSTS                  cet article, Visual Studio 2005 Team System servira de
                                                    testeur.

                                                                                                               23
                                                Les Tests Unitaires sous Visual Studio 2010
  Alexandre MEYER et Jade DORVIL              Document Propriété de So@t, Diffusion Interdite
II. Présentation de MsTest

1. Son Histoire
2. Fonctionnement de l’outil
      a. L’interface Utilisateur
      b. Création des Tests Unitaires
      c. Spécificités de l’Outil




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   24
a. L’interface Utilisateur

⦿ Les vues




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   25
Les vues
⦿ Test View




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   26
Les vues
⦿ Test List Editor




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   27
Les vues
⦿ Test Results




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   28
Les vues
⦿ Test Run




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   29
a. L’interface Utilisateur

⦿ L’anatomie d’un Test Unitaire
      ⦿      Microsoft.VisualStudio.TestTools.UnitTesting
      ⦿      TestClassAttribute
      ⦿      TestMethodAttribute
      ⦿      TestContext
      ⦿      Et autres attributs de test
             ⦿    [ClassInitialize()]
             ⦿    [ClassCleanUp()]
             ⦿    [TestInitialize()]
             ⦿    [TestCleanUp()]


                                          Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL          Document Propriété de So@t, Diffusion Interdite
                                                                                          30
a. L’interface Utilisateur

⦿ Les actions possibles sur les Tests
      ⦿ Test en Release
      ⦿ Test en Debug
      ⦿ Relance de Test sur des Assembly déjà déployés.




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   31
a. L’interface Utilisateur

⦿ Gestion des Tests
      ⦿ Listes de Tests
      ⦿ Séquences de Test ordonnées
      ⦿ Catégories




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   32
Alexandre MEYER et Jade DORVIL     Les Tests Unitaires sous Visual Studio 2010
                                                                                   33
                                 Document Propriété de So@t, Diffusion Interdite
a. L’interface Utilisateur

⦿ La configuration des environnements de Test
      ⦿      Déploiement
      ⦿      Timeout au niveau solution
      ⦿      Réglage des types d’Host
      ⦿      Lancement des scripts




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   34
Alexandre MEYER et Jade DORVIL     Les Tests Unitaires sous Visual Studio 2010
                                                                                   35
                                 Document Propriété de So@t, Diffusion Interdite
II. Présentation de MsTest

1. Son Histoire
2. Fonctionnement de l’outil
      a. L’interface Utilisateur
      b. Création des Tests Unitaires
      c. Spécificités de l’Outil




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   36
b. Création des Tests Unitaires

Débit/Crédit sur compte Bancaire




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   37
Alexandre MEYER et Jade DORVIL     Les Tests Unitaires sous Visual Studio 2010
                                                                                   38
                                 Document Propriété de So@t, Diffusion Interdite
II. Présentation de MsTest

1. Son Histoire
2. Fonctionnement de l’outil
      a. L’interface Utilisateur
      b. Création des Tests Unitaires
      c. Spécificités de l’Outil




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   39
c. Spécificités de L’Outil

⦿ Les tests introspectifs
⦿ Multi-Cœurs
⦿ Gestion Du MTA
⦿ DataDriven Tests
⦿ Les génériques
⦿ Tests pour Le Web



                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   40
Les tests introspectifs

⦿ Besoin de tester des méthodes privées ?
⦿ Décapsulation => Accessor
⦿ Pas de changement du code métier
⦿ Accès autorisé à toute la classe.




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   41
Alexandre MEYER et Jade DORVIL     Les Tests Unitaires sous Visual Studio 2010
                                                                                   42
                                 Document Propriété de So@t, Diffusion Interdite
c. Spécificités de L’Outil

⦿ Les tests introspectifs
⦿ Multi-Cœurs
⦿ Gestion Du MTA
⦿ DataDriven Tests
⦿ Les generics
⦿ Tests pour Le Web



                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   43
Multi-Cœurs

⦿ Avant


⦿ Après




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   44
Alexandre MEYER et Jade DORVIL     Les Tests Unitaires sous Visual Studio 2010
                                                                                   45
                                 Document Propriété de So@t, Diffusion Interdite
c. Spécificités de L’Outil

⦿ Les tests introspectifs
⦿ Multi-Cœurs
⦿ Gestion Du MTA
⦿ DataDriven Tests
⦿ Les generics
⦿ Tests pour Le Web



                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   46
Gestion du MTA




                      Thread
                      Synchronisation
                      Appel Client
                      Processus
                      Appartenance
                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   47
Gestion du MTA
⦿ MTA = Multi-Threaded Appartment
⦿ WaitHandle.WaitAll(WaitHandle[])
⦿ Exemple : Plusieurs débiteurs et créditeurs
  sur un seul compte.




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   48
Alexandre MEYER et Jade DORVIL     Les Tests Unitaires sous Visual Studio 2010
                                                                                   49
                                 Document Propriété de So@t, Diffusion Interdite
c. Spécificités de L’Outil

⦿ Les tests introspectifs
⦿ Multi-Cœurs
⦿ Gestion Du MTA
⦿ DataDriven Tests
⦿ Les generics
⦿ Tests pour Le Web



                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   50
DataDriven Tests
⦿ DDT = DataDriven Tests
⦿ Faire un test du code métier sur plusieurs
  paramètres différents
⦿ Attacher une datasource : CSV, XML , DB
⦿ Parcours de celle-ci ligne après ligne
⦿ Exemple d’une calculatrice avec un CSV




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   51
Alexandre MEYER et Jade DORVIL     Les Tests Unitaires sous Visual Studio 2010
                                                                                   52
                                 Document Propriété de So@t, Diffusion Interdite
c. Spécificités de L’Outil

⦿ Les tests introspectifs
⦿ Multi-Cœurs
⦿ Gestion Du MTA
⦿ DataDriven Tests
⦿ Les generics
⦿ Tests pour Le Web



                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   53
c. Les génériques

⦿ Tests unitaires pour des méthodes
  génériques
⦿ Tests unitaires pour des méthodes avec
  contraintes de type




                                                                                   54
                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
Alexandre MEYER et Jade DORVIL     Les Tests Unitaires sous Visual Studio 2010
                                                                                   55
                                 Document Propriété de So@t, Diffusion Interdite
c. Spécificités de L’Outil

⦿ Les tests introspectifs
⦿ Multi-Cœurs
⦿ Gestion Du MTA
⦿ DataDriven Tests
⦿ Les generics
⦿ Tests pour Le Web



                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   56
Tests pour Le Web


⦿ MVC
      ⦿ [Host Type ()]
      ⦿ [AspNetDevelopmentServerHost()]
      ⦿ [UrlToTest()]




Alexandre MEYER et Jade DORVIL     Les Tests Unitaires sous Visual Studio 2010
                                                                                   57
                                 Document Propriété de So@t, Diffusion Interdite
Alexandre MEYER et Jade DORVIL     Les Tests Unitaires sous Visual Studio 2010
                                                                                   58
                                 Document Propriété de So@t, Diffusion Interdite
Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   59
Plan de la présentation

I. Rappel sur les Tests unitaires
II. Présentation de MS Test
III. MsTest face à la Concurrence
IV. Les plus de la licence Pro/Ultimate
V. Les apports du passage à Visual Studio 2012




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   60
Xunit.Net




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                               61
III. Ms Test face à la concurrence

⦿ Ses avantages Face à Nunit
      ⦿ Complètement multithread, et Multi-Cœurs
      ⦿ Génération automatique des skeletons
      ⦿ Maîtrise sur Trois niveaux du Contexte(Vs Xunit)
      ⦿ Les tests introspectifs
      ⦿ Les Listes ordonnées de Test.
      ⦿ Supporte le MTA
      ⦿ Timeout au niveau Solution

                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   62
III. Ms Test face à la concurrence

⦿ Ses Inconvénients
      ⦿ Coût temporel de démarrage d’une session de
        test
      ⦿ Pour le DataDriven Test, un CSV au minimum
      ⦿ Pas D’assertion sur la présence de fichiers et
        répertoires
      ⦿ Intégration continue un peu moins spontanée
             ⦿ Gallio
             ⦿ Visual Studio Agents 2010

                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   63
III. Ms Test face à la concurrence

⦿ Ses Limites
      ⦿ Pas d’extensibilité sur Les assertions
      ⦿ Pas d’accès aux méthodes des webSites
      ⦿ Pas de fourniture de Mocks, mais…
             ⦿ Nmock3 ( Net 3.5, Net 4.0)
             ⦿ Moq (->.Net 4.0)
             ⦿ RhinoMocks ( ->.Net 3.5)




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   64
III. Ms Test face à la concurrence

  ⦿ Synthèse de son positionnement
                MsTest                                                                  NUnit
 Générateur de skeleton intégré et                                                  Vitesse d’exécution
             gratuit
          Exécutions parallèles                                                         Simplicité
             Bien intégré à TFS                                               Assertions Nombreuses



  ⦿ Migrer Nunit vs MsTest


                                    Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL    Document Propriété de So@t, Diffusion Interdite
                                                                                                          65
Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   66
Plan de la présentation

I. Rappel sur les Tests unitaires
II. Présentation de MS Test
III. MsTest face à la Concurrence
IV. Les plus de la licence Pro/Ultimate
V. Les apports du passage à Visual Studio
   2012.



                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   67
IV. Les plus de la licence Pro/Ultimate




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   68
IV. Les plus de la licence Pro/Ultimate




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   69
Plan de la présentation

I. Rappel sur les Tests unitaires
II. Présentation de MS Test
III. MS Test face à la Concurrence
IV. Les plus de la licence Pro/Ultimate
V.          Les apports du passage à Visual
            Studio 2012


                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   70
VI. Visual Studio 2012




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   71
VI. Visual Studio 2012

⦿ Code clone detection
⦿ Code Metrics Values
⦿ Microsoft Fakes isolation framework
⦿ Extend the unit test type




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   72
Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   73
En Conclusion…

⦿ Sur ses spécificités
⦿ Sur son positionnement
⦿ Son potentiel en fonction des licences
⦿ Son évolution future




                                   Les Tests Unitaires sous Visual Studio 2010
Alexandre MEYER et Jade DORVIL   Document Propriété de So@t, Diffusion Interdite
                                                                                   74
Merci de Votre
                                   attention




Alexandre MEYER et Jade DORVIL        Les Tests Unitaires sous Visual Studio 2010     75
                                    Document Propriété de So@t, Diffusion Interdite
http://dangerz.blogspot.fr/2012/01/converting-
nunit-to-mstest.html
http://blogs.developpeur.org/etienne/archive/200
9/05/23/visual-studio-2010-quoi-de-neuf-pour-les-
tests-web.aspx
http://bradwilson.typepad.com/blog/2010/07/test
ing-routing-and-url-generation-in-aspnet-
mvc.html#more


Alexandre MEYER et Jade DORVIL     Les Tests Unitaires sous Visual Studio 2010     76
                                 Document Propriété de So@t, Diffusion Interdite

More Related Content

Viewers also liked

Modulemarketing 121016134407-phpapp01
Modulemarketing 121016134407-phpapp01Modulemarketing 121016134407-phpapp01
Modulemarketing 121016134407-phpapp01Nabil Ben Zerrouk
 
031808 obama speech (french)
031808   obama speech (french)031808   obama speech (french)
031808 obama speech (french)VogelDenise
 
Playtests, traductions, et relectures
Playtests, traductions, et relectures  Playtests, traductions, et relectures
Playtests, traductions, et relectures Pascal Minoche
 
Social Networks Statistics 2014
Social Networks Statistics 2014Social Networks Statistics 2014
Social Networks Statistics 2014Ismail BADACHE
 
Sinibaldi C&F - Catalogue de formations
Sinibaldi C&F - Catalogue de formationsSinibaldi C&F - Catalogue de formations
Sinibaldi C&F - Catalogue de formationsVéronique Moussa
 
Laudon traver e-commerce4_e_chapter01
Laudon traver e-commerce4_e_chapter01Laudon traver e-commerce4_e_chapter01
Laudon traver e-commerce4_e_chapter01rui6
 
La Maaf, un assureur mutualiste plus agile grâce à la gestion de ses règles m...
La Maaf, un assureur mutualiste plus agile grâce à la gestion de ses règles m...La Maaf, un assureur mutualiste plus agile grâce à la gestion de ses règles m...
La Maaf, un assureur mutualiste plus agile grâce à la gestion de ses règles m...Solutions IT et Business
 
projet sparte alexandre atlan
projet sparte alexandre atlanprojet sparte alexandre atlan
projet sparte alexandre atlanclimberboy1999
 
Les S@PINS
Les S@PINSLes S@PINS
Les S@PINSAldmi
 
Kanban à grande échelle animé par Yannick Quenec'hdu
Kanban à grande échelle animé par Yannick Quenec'hduKanban à grande échelle animé par Yannick Quenec'hdu
Kanban à grande échelle animé par Yannick Quenec'hduFrench Scrum User Group
 
Guide Loisirs et Commerces 2015 en Côte Landes Nature
Guide Loisirs et Commerces 2015 en Côte Landes NatureGuide Loisirs et Commerces 2015 en Côte Landes Nature
Guide Loisirs et Commerces 2015 en Côte Landes NatureSabine C
 
United States of America – IMMIGRATION REFORM - FRENCH
United States of America – IMMIGRATION REFORM - FRENCHUnited States of America – IMMIGRATION REFORM - FRENCH
United States of America – IMMIGRATION REFORM - FRENCHVogelDenise
 
Positivité et performance au travail - Oui Thérapie
Positivité et performance au travail - Oui ThérapiePositivité et performance au travail - Oui Thérapie
Positivité et performance au travail - Oui ThérapieThierry Amsellem
 
052215 - FAX TO DELNER THOMAS & BENNIE THOMPSON (French)
052215 - FAX TO DELNER THOMAS & BENNIE THOMPSON (French)052215 - FAX TO DELNER THOMAS & BENNIE THOMPSON (French)
052215 - FAX TO DELNER THOMAS & BENNIE THOMPSON (French)VogelDenise
 
Expert Soldes Juillet 2013
Expert Soldes Juillet 2013Expert Soldes Juillet 2013
Expert Soldes Juillet 2013Expert
 
Techniques de production du bracharia utile
Techniques de production du bracharia utile Techniques de production du bracharia utile
Techniques de production du bracharia utile Emmanuel Nanfang
 

Viewers also liked (19)

Modulemarketing 121016134407-phpapp01
Modulemarketing 121016134407-phpapp01Modulemarketing 121016134407-phpapp01
Modulemarketing 121016134407-phpapp01
 
031808 obama speech (french)
031808   obama speech (french)031808   obama speech (french)
031808 obama speech (french)
 
Playtests, traductions, et relectures
Playtests, traductions, et relectures  Playtests, traductions, et relectures
Playtests, traductions, et relectures
 
Social Networks Statistics 2014
Social Networks Statistics 2014Social Networks Statistics 2014
Social Networks Statistics 2014
 
Sinibaldi C&F - Catalogue de formations
Sinibaldi C&F - Catalogue de formationsSinibaldi C&F - Catalogue de formations
Sinibaldi C&F - Catalogue de formations
 
Backdwarf
BackdwarfBackdwarf
Backdwarf
 
Laudon traver e-commerce4_e_chapter01
Laudon traver e-commerce4_e_chapter01Laudon traver e-commerce4_e_chapter01
Laudon traver e-commerce4_e_chapter01
 
La Maaf, un assureur mutualiste plus agile grâce à la gestion de ses règles m...
La Maaf, un assureur mutualiste plus agile grâce à la gestion de ses règles m...La Maaf, un assureur mutualiste plus agile grâce à la gestion de ses règles m...
La Maaf, un assureur mutualiste plus agile grâce à la gestion de ses règles m...
 
Project term 1
Project term 1Project term 1
Project term 1
 
projet sparte alexandre atlan
projet sparte alexandre atlanprojet sparte alexandre atlan
projet sparte alexandre atlan
 
Les S@PINS
Les S@PINSLes S@PINS
Les S@PINS
 
Kanban à grande échelle animé par Yannick Quenec'hdu
Kanban à grande échelle animé par Yannick Quenec'hduKanban à grande échelle animé par Yannick Quenec'hdu
Kanban à grande échelle animé par Yannick Quenec'hdu
 
Guide Loisirs et Commerces 2015 en Côte Landes Nature
Guide Loisirs et Commerces 2015 en Côte Landes NatureGuide Loisirs et Commerces 2015 en Côte Landes Nature
Guide Loisirs et Commerces 2015 en Côte Landes Nature
 
Utrecht prog ws series_b_vf
Utrecht prog  ws series_b_vfUtrecht prog  ws series_b_vf
Utrecht prog ws series_b_vf
 
United States of America – IMMIGRATION REFORM - FRENCH
United States of America – IMMIGRATION REFORM - FRENCHUnited States of America – IMMIGRATION REFORM - FRENCH
United States of America – IMMIGRATION REFORM - FRENCH
 
Positivité et performance au travail - Oui Thérapie
Positivité et performance au travail - Oui ThérapiePositivité et performance au travail - Oui Thérapie
Positivité et performance au travail - Oui Thérapie
 
052215 - FAX TO DELNER THOMAS & BENNIE THOMPSON (French)
052215 - FAX TO DELNER THOMAS & BENNIE THOMPSON (French)052215 - FAX TO DELNER THOMAS & BENNIE THOMPSON (French)
052215 - FAX TO DELNER THOMAS & BENNIE THOMPSON (French)
 
Expert Soldes Juillet 2013
Expert Soldes Juillet 2013Expert Soldes Juillet 2013
Expert Soldes Juillet 2013
 
Techniques de production du bracharia utile
Techniques de production du bracharia utile Techniques de production du bracharia utile
Techniques de production du bracharia utile
 

More from SOAT

Back from Microsoft //Build 2018
Back from Microsoft //Build 2018Back from Microsoft //Build 2018
Back from Microsoft //Build 2018SOAT
 
L'entreprise libérée
L'entreprise libéréeL'entreprise libérée
L'entreprise libéréeSOAT
 
Amélioration continue, c'est l'affaire de tous !
Amélioration continue, c'est l'affaire de tous !Amélioration continue, c'est l'affaire de tous !
Amélioration continue, c'est l'affaire de tous !SOAT
 
JAVA 8 : Migration et enjeux stratégiques en entreprise
JAVA 8 : Migration et enjeux stratégiques en entrepriseJAVA 8 : Migration et enjeux stratégiques en entreprise
JAVA 8 : Migration et enjeux stratégiques en entrepriseSOAT
 
ARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUES
ARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUESARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUES
ARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUESSOAT
 
3/3 : The path to CDI 2.0 - Antoine Sabot-Durand
3/3 : The path to CDI 2.0 - Antoine Sabot-Durand3/3 : The path to CDI 2.0 - Antoine Sabot-Durand
3/3 : The path to CDI 2.0 - Antoine Sabot-DurandSOAT
 
1/3 : introduction to CDI - Antoine Sabot-Durand
1/3 : introduction to CDI - Antoine Sabot-Durand1/3 : introduction to CDI - Antoine Sabot-Durand
1/3 : introduction to CDI - Antoine Sabot-DurandSOAT
 
2/3 : CDI advanced - Antoine Sabot-Durand
2/3 : CDI advanced - Antoine Sabot-Durand2/3 : CDI advanced - Antoine Sabot-Durand
2/3 : CDI advanced - Antoine Sabot-DurandSOAT
 
Angular JS - Paterne Gaye-Guingnido
Angular JS - Paterne Gaye-Guingnido Angular JS - Paterne Gaye-Guingnido
Angular JS - Paterne Gaye-Guingnido SOAT
 
Dans l'enfer du Web Mobile - un retour d'expérience - Mathieu Parisot
Dans l'enfer du Web Mobile - un retour d'expérience - Mathieu ParisotDans l'enfer du Web Mobile - un retour d'expérience - Mathieu Parisot
Dans l'enfer du Web Mobile - un retour d'expérience - Mathieu ParisotSOAT
 
RxJava, Getting Started - David Wursteisen - 16 Octobre 2014
RxJava, Getting Started - David Wursteisen - 16 Octobre 2014RxJava, Getting Started - David Wursteisen - 16 Octobre 2014
RxJava, Getting Started - David Wursteisen - 16 Octobre 2014SOAT
 
L'impact du Responsive Web Design sur vos équipes projet - Mathieu Parisot - ...
L'impact du Responsive Web Design sur vos équipes projet - Mathieu Parisot - ...L'impact du Responsive Web Design sur vos équipes projet - Mathieu Parisot - ...
L'impact du Responsive Web Design sur vos équipes projet - Mathieu Parisot - ...SOAT
 
Nio sur Netty par Mouhcine Moulou - 3 avril 2014
Nio sur Netty par Mouhcine Moulou - 3 avril 2014Nio sur Netty par Mouhcine Moulou - 3 avril 2014
Nio sur Netty par Mouhcine Moulou - 3 avril 2014SOAT
 
20140123 java8 lambdas_jose-paumard-soat
20140123 java8 lambdas_jose-paumard-soat20140123 java8 lambdas_jose-paumard-soat
20140123 java8 lambdas_jose-paumard-soatSOAT
 
Développer des applications iOS et Android avec c# grâce à Xamarin par Cyril ...
Développer des applications iOS et Android avec c# grâce à Xamarin par Cyril ...Développer des applications iOS et Android avec c# grâce à Xamarin par Cyril ...
Développer des applications iOS et Android avec c# grâce à Xamarin par Cyril ...SOAT
 
Amazon Web Service par Bertrand Lehurt - 11 mars 2014
Amazon Web Service par Bertrand Lehurt - 11 mars 2014Amazon Web Service par Bertrand Lehurt - 11 mars 2014
Amazon Web Service par Bertrand Lehurt - 11 mars 2014SOAT
 
ASP.Net Web API - Léonard Labat (18 février 2014)
ASP.Net Web API - Léonard Labat (18 février 2014)ASP.Net Web API - Léonard Labat (18 février 2014)
ASP.Net Web API - Léonard Labat (18 février 2014)SOAT
 
Xamarin et le développement natif d’applications Android, iOS et Windows en C#
 Xamarin et le développement natif d’applications Android, iOS et Windows en C# Xamarin et le développement natif d’applications Android, iOS et Windows en C#
Xamarin et le développement natif d’applications Android, iOS et Windows en C#SOAT
 
A la découverte du Responsive Web Design par Mathieu Parisot - Soat
A la découverte du Responsive Web Design par Mathieu Parisot - SoatA la découverte du Responsive Web Design par Mathieu Parisot - Soat
A la découverte du Responsive Web Design par Mathieu Parisot - SoatSOAT
 
MongoDB : la base NoSQL qui réinvente la gestion de données
MongoDB : la base NoSQL qui réinvente la gestion de donnéesMongoDB : la base NoSQL qui réinvente la gestion de données
MongoDB : la base NoSQL qui réinvente la gestion de donnéesSOAT
 

More from SOAT (20)

Back from Microsoft //Build 2018
Back from Microsoft //Build 2018Back from Microsoft //Build 2018
Back from Microsoft //Build 2018
 
L'entreprise libérée
L'entreprise libéréeL'entreprise libérée
L'entreprise libérée
 
Amélioration continue, c'est l'affaire de tous !
Amélioration continue, c'est l'affaire de tous !Amélioration continue, c'est l'affaire de tous !
Amélioration continue, c'est l'affaire de tous !
 
JAVA 8 : Migration et enjeux stratégiques en entreprise
JAVA 8 : Migration et enjeux stratégiques en entrepriseJAVA 8 : Migration et enjeux stratégiques en entreprise
JAVA 8 : Migration et enjeux stratégiques en entreprise
 
ARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUES
ARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUESARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUES
ARCHITECTURE MICROSERVICE : TOUR D’HORIZON DU CONCEPT ET BONNES PRATIQUES
 
3/3 : The path to CDI 2.0 - Antoine Sabot-Durand
3/3 : The path to CDI 2.0 - Antoine Sabot-Durand3/3 : The path to CDI 2.0 - Antoine Sabot-Durand
3/3 : The path to CDI 2.0 - Antoine Sabot-Durand
 
1/3 : introduction to CDI - Antoine Sabot-Durand
1/3 : introduction to CDI - Antoine Sabot-Durand1/3 : introduction to CDI - Antoine Sabot-Durand
1/3 : introduction to CDI - Antoine Sabot-Durand
 
2/3 : CDI advanced - Antoine Sabot-Durand
2/3 : CDI advanced - Antoine Sabot-Durand2/3 : CDI advanced - Antoine Sabot-Durand
2/3 : CDI advanced - Antoine Sabot-Durand
 
Angular JS - Paterne Gaye-Guingnido
Angular JS - Paterne Gaye-Guingnido Angular JS - Paterne Gaye-Guingnido
Angular JS - Paterne Gaye-Guingnido
 
Dans l'enfer du Web Mobile - un retour d'expérience - Mathieu Parisot
Dans l'enfer du Web Mobile - un retour d'expérience - Mathieu ParisotDans l'enfer du Web Mobile - un retour d'expérience - Mathieu Parisot
Dans l'enfer du Web Mobile - un retour d'expérience - Mathieu Parisot
 
RxJava, Getting Started - David Wursteisen - 16 Octobre 2014
RxJava, Getting Started - David Wursteisen - 16 Octobre 2014RxJava, Getting Started - David Wursteisen - 16 Octobre 2014
RxJava, Getting Started - David Wursteisen - 16 Octobre 2014
 
L'impact du Responsive Web Design sur vos équipes projet - Mathieu Parisot - ...
L'impact du Responsive Web Design sur vos équipes projet - Mathieu Parisot - ...L'impact du Responsive Web Design sur vos équipes projet - Mathieu Parisot - ...
L'impact du Responsive Web Design sur vos équipes projet - Mathieu Parisot - ...
 
Nio sur Netty par Mouhcine Moulou - 3 avril 2014
Nio sur Netty par Mouhcine Moulou - 3 avril 2014Nio sur Netty par Mouhcine Moulou - 3 avril 2014
Nio sur Netty par Mouhcine Moulou - 3 avril 2014
 
20140123 java8 lambdas_jose-paumard-soat
20140123 java8 lambdas_jose-paumard-soat20140123 java8 lambdas_jose-paumard-soat
20140123 java8 lambdas_jose-paumard-soat
 
Développer des applications iOS et Android avec c# grâce à Xamarin par Cyril ...
Développer des applications iOS et Android avec c# grâce à Xamarin par Cyril ...Développer des applications iOS et Android avec c# grâce à Xamarin par Cyril ...
Développer des applications iOS et Android avec c# grâce à Xamarin par Cyril ...
 
Amazon Web Service par Bertrand Lehurt - 11 mars 2014
Amazon Web Service par Bertrand Lehurt - 11 mars 2014Amazon Web Service par Bertrand Lehurt - 11 mars 2014
Amazon Web Service par Bertrand Lehurt - 11 mars 2014
 
ASP.Net Web API - Léonard Labat (18 février 2014)
ASP.Net Web API - Léonard Labat (18 février 2014)ASP.Net Web API - Léonard Labat (18 février 2014)
ASP.Net Web API - Léonard Labat (18 février 2014)
 
Xamarin et le développement natif d’applications Android, iOS et Windows en C#
 Xamarin et le développement natif d’applications Android, iOS et Windows en C# Xamarin et le développement natif d’applications Android, iOS et Windows en C#
Xamarin et le développement natif d’applications Android, iOS et Windows en C#
 
A la découverte du Responsive Web Design par Mathieu Parisot - Soat
A la découverte du Responsive Web Design par Mathieu Parisot - SoatA la découverte du Responsive Web Design par Mathieu Parisot - Soat
A la découverte du Responsive Web Design par Mathieu Parisot - Soat
 
MongoDB : la base NoSQL qui réinvente la gestion de données
MongoDB : la base NoSQL qui réinvente la gestion de donnéesMongoDB : la base NoSQL qui réinvente la gestion de données
MongoDB : la base NoSQL qui réinvente la gestion de données
 

Test unitaires visual studio

  • 1. Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 1
  • 2. Périmètre de la présentation ⦿ Visual Studio 2010 Professional ⦿ Connaissance des Tests Unitaires ⦿ Concentration sur l’Outil Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 2
  • 3. Les présentateurs ⦿ Alexandre MEYER ⦿ Concepteur-Développeur .Net ⦿ alexandre.meyer@soat.fr ⦿ Jade DORVIL ⦿ Développeur .Net ⦿ Jade.dorvil@soat.fr Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 3
  • 4. Plan de la présentation I. Rappel sur les Tests unitaires II. Présentation de MS Test III. MsTest face à la Concurrence IV. Les plus de la licence Pro/Ultimate V. Les apports du passage à Visual Studio 2012 Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 4
  • 5. Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 5
  • 6. I. Rappel sur les tests unitaires 1) Pourquoi tester? 2) Qu’est ce qu’un test unitaire ? Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 6
  • 7. 1. Pourquoi tester? Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 7
  • 8. 1. Pourquoi tester? ⦿ Raisons liés au Projet : ⦿ Politique ⦿ Risques de pertes Financières ⦿ Criticité ⦿ Produit Grand Public Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 8
  • 9. 1. Pourquoi tester? Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 9
  • 10. 1. Pourquoi tester? ⦿ Pour l’équipe : ⦿ Non-régression entre les commit : IC ⦿ Confiance améliorée entre les développeurs ⦿ Maintenabilité Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 10
  • 11. 1. Pourquoi tester? 11 Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite
  • 12. 1. Pourquoi tester? ⦿ Pour vous-mêmes : ⦿ Valider couche par couche une architecture complexe ⦿ Faciliter le débogage ⦿ Connaître les performances ⦿Objectifs atteints ou non ? ⦿Amélioration de la performance de manière unitaire Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 12
  • 13. I. Rappel sur les tests unitaires 1. Pourquoi tester? 2. Qu’est-ce qu’un test unitaire ? Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 13
  • 14. 2. Qu’est ce qu’un test unitaire ? ⦿ Définition : « le test unitaire est un procédé permettant de s'assurer du fonctionnement correct d'une partie déterminée d'un logiciel ou d'une portion d'un programme (appelée « unité » ou « module »). » Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 14
  • 15. 2. Qu’est ce qu’un test unitaire ? Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t,Diffusion Interdite 15
  • 16. 2. Qu’est ce qu’un test unitaire ? ⦿ Ses caractéristiques : ⦿ Taux de couverture ⦿ Réutilisation ⦿ Atomicité ⦿ Contexte(s) de départ/d’arrivée ⦿ Synchrone/Asynchrone Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 16
  • 17. 2. Qu’est ce qu’un test unitaire ? ⦿ Son exécution: ⦿ Réussite ⦿ Temps d’exécution ⦿ Contexte d’exécution ⦿ Environnement de test ⦿ MTA/STA ⦿ Mono-Cœur/Multi-Cœurs Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 17
  • 18. Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 18
  • 19. Plan de la présentation I. Rappel sur les Tests unitaires II. Présentation de MS Test III. MsTest face à la Concurrence IV. Les plus de la licence Pro/Ultimate V. Les apports du passage à Visual Studio 2012 Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 19
  • 20. Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 20
  • 21. II. Présentation de MsTest 1. Historique 2. Fonctionnement de l’outil Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 21
  • 22. 1. Son histoire 2010 2012 Version Evolutions 2005 améliorée notables : Arrivé de de MsTest - Isolation du Années 2000 MsTest (VS code 2005 Team Constat : Trop System) - Méthodes de code annonymes 1998 Infrastructure xUnit (eXtreme Programming) Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 22
  • 23. 1. Son histoire Concept de Équivalent VS 2005 Description l'infrastructure xUnit (voir les attributs ci- dessous) Test TestMethod Ce sont vos tests. Fournit la logique pour vérifier que le résultat est bien celui prévu et vous informe si le résultat n'est pas atteint. Imaginez qu'il s'agit de votre « méthode ». Contexte du test TestClass Regroupement logique d'un à plusieurs tests. Imaginez (Fixture) qu'il s'agit de votre « classe ». Suite de tests Test List ** Regroupement logique d'un à plusieurs contextes de test. Imaginez qu'il s'agit de votre « bibliothèque de classes ». Remarque : Cette liste n'a pas besoin d'attribut. Testeur Infrastructure de GUI/Application de console chargée de découvrir, tests unitaires VS d'exécuter et de présenter les résultats des tests. Dans 2005 VSTS cet article, Visual Studio 2005 Team System servira de testeur. 23 Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite
  • 24. II. Présentation de MsTest 1. Son Histoire 2. Fonctionnement de l’outil a. L’interface Utilisateur b. Création des Tests Unitaires c. Spécificités de l’Outil Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 24
  • 25. a. L’interface Utilisateur ⦿ Les vues Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 25
  • 26. Les vues ⦿ Test View Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 26
  • 27. Les vues ⦿ Test List Editor Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 27
  • 28. Les vues ⦿ Test Results Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 28
  • 29. Les vues ⦿ Test Run Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 29
  • 30. a. L’interface Utilisateur ⦿ L’anatomie d’un Test Unitaire ⦿ Microsoft.VisualStudio.TestTools.UnitTesting ⦿ TestClassAttribute ⦿ TestMethodAttribute ⦿ TestContext ⦿ Et autres attributs de test ⦿ [ClassInitialize()] ⦿ [ClassCleanUp()] ⦿ [TestInitialize()] ⦿ [TestCleanUp()] Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 30
  • 31. a. L’interface Utilisateur ⦿ Les actions possibles sur les Tests ⦿ Test en Release ⦿ Test en Debug ⦿ Relance de Test sur des Assembly déjà déployés. Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 31
  • 32. a. L’interface Utilisateur ⦿ Gestion des Tests ⦿ Listes de Tests ⦿ Séquences de Test ordonnées ⦿ Catégories Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 32
  • 33. Alexandre MEYER et Jade DORVIL Les Tests Unitaires sous Visual Studio 2010 33 Document Propriété de So@t, Diffusion Interdite
  • 34. a. L’interface Utilisateur ⦿ La configuration des environnements de Test ⦿ Déploiement ⦿ Timeout au niveau solution ⦿ Réglage des types d’Host ⦿ Lancement des scripts Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 34
  • 35. Alexandre MEYER et Jade DORVIL Les Tests Unitaires sous Visual Studio 2010 35 Document Propriété de So@t, Diffusion Interdite
  • 36. II. Présentation de MsTest 1. Son Histoire 2. Fonctionnement de l’outil a. L’interface Utilisateur b. Création des Tests Unitaires c. Spécificités de l’Outil Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 36
  • 37. b. Création des Tests Unitaires Débit/Crédit sur compte Bancaire Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 37
  • 38. Alexandre MEYER et Jade DORVIL Les Tests Unitaires sous Visual Studio 2010 38 Document Propriété de So@t, Diffusion Interdite
  • 39. II. Présentation de MsTest 1. Son Histoire 2. Fonctionnement de l’outil a. L’interface Utilisateur b. Création des Tests Unitaires c. Spécificités de l’Outil Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 39
  • 40. c. Spécificités de L’Outil ⦿ Les tests introspectifs ⦿ Multi-Cœurs ⦿ Gestion Du MTA ⦿ DataDriven Tests ⦿ Les génériques ⦿ Tests pour Le Web Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 40
  • 41. Les tests introspectifs ⦿ Besoin de tester des méthodes privées ? ⦿ Décapsulation => Accessor ⦿ Pas de changement du code métier ⦿ Accès autorisé à toute la classe. Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 41
  • 42. Alexandre MEYER et Jade DORVIL Les Tests Unitaires sous Visual Studio 2010 42 Document Propriété de So@t, Diffusion Interdite
  • 43. c. Spécificités de L’Outil ⦿ Les tests introspectifs ⦿ Multi-Cœurs ⦿ Gestion Du MTA ⦿ DataDriven Tests ⦿ Les generics ⦿ Tests pour Le Web Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 43
  • 44. Multi-Cœurs ⦿ Avant ⦿ Après Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 44
  • 45. Alexandre MEYER et Jade DORVIL Les Tests Unitaires sous Visual Studio 2010 45 Document Propriété de So@t, Diffusion Interdite
  • 46. c. Spécificités de L’Outil ⦿ Les tests introspectifs ⦿ Multi-Cœurs ⦿ Gestion Du MTA ⦿ DataDriven Tests ⦿ Les generics ⦿ Tests pour Le Web Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 46
  • 47. Gestion du MTA Thread Synchronisation Appel Client Processus Appartenance Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 47
  • 48. Gestion du MTA ⦿ MTA = Multi-Threaded Appartment ⦿ WaitHandle.WaitAll(WaitHandle[]) ⦿ Exemple : Plusieurs débiteurs et créditeurs sur un seul compte. Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 48
  • 49. Alexandre MEYER et Jade DORVIL Les Tests Unitaires sous Visual Studio 2010 49 Document Propriété de So@t, Diffusion Interdite
  • 50. c. Spécificités de L’Outil ⦿ Les tests introspectifs ⦿ Multi-Cœurs ⦿ Gestion Du MTA ⦿ DataDriven Tests ⦿ Les generics ⦿ Tests pour Le Web Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 50
  • 51. DataDriven Tests ⦿ DDT = DataDriven Tests ⦿ Faire un test du code métier sur plusieurs paramètres différents ⦿ Attacher une datasource : CSV, XML , DB ⦿ Parcours de celle-ci ligne après ligne ⦿ Exemple d’une calculatrice avec un CSV Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 51
  • 52. Alexandre MEYER et Jade DORVIL Les Tests Unitaires sous Visual Studio 2010 52 Document Propriété de So@t, Diffusion Interdite
  • 53. c. Spécificités de L’Outil ⦿ Les tests introspectifs ⦿ Multi-Cœurs ⦿ Gestion Du MTA ⦿ DataDriven Tests ⦿ Les generics ⦿ Tests pour Le Web Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 53
  • 54. c. Les génériques ⦿ Tests unitaires pour des méthodes génériques ⦿ Tests unitaires pour des méthodes avec contraintes de type 54 Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite
  • 55. Alexandre MEYER et Jade DORVIL Les Tests Unitaires sous Visual Studio 2010 55 Document Propriété de So@t, Diffusion Interdite
  • 56. c. Spécificités de L’Outil ⦿ Les tests introspectifs ⦿ Multi-Cœurs ⦿ Gestion Du MTA ⦿ DataDriven Tests ⦿ Les generics ⦿ Tests pour Le Web Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 56
  • 57. Tests pour Le Web ⦿ MVC ⦿ [Host Type ()] ⦿ [AspNetDevelopmentServerHost()] ⦿ [UrlToTest()] Alexandre MEYER et Jade DORVIL Les Tests Unitaires sous Visual Studio 2010 57 Document Propriété de So@t, Diffusion Interdite
  • 58. Alexandre MEYER et Jade DORVIL Les Tests Unitaires sous Visual Studio 2010 58 Document Propriété de So@t, Diffusion Interdite
  • 59. Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 59
  • 60. Plan de la présentation I. Rappel sur les Tests unitaires II. Présentation de MS Test III. MsTest face à la Concurrence IV. Les plus de la licence Pro/Ultimate V. Les apports du passage à Visual Studio 2012 Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 60
  • 61. Xunit.Net Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 61
  • 62. III. Ms Test face à la concurrence ⦿ Ses avantages Face à Nunit ⦿ Complètement multithread, et Multi-Cœurs ⦿ Génération automatique des skeletons ⦿ Maîtrise sur Trois niveaux du Contexte(Vs Xunit) ⦿ Les tests introspectifs ⦿ Les Listes ordonnées de Test. ⦿ Supporte le MTA ⦿ Timeout au niveau Solution Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 62
  • 63. III. Ms Test face à la concurrence ⦿ Ses Inconvénients ⦿ Coût temporel de démarrage d’une session de test ⦿ Pour le DataDriven Test, un CSV au minimum ⦿ Pas D’assertion sur la présence de fichiers et répertoires ⦿ Intégration continue un peu moins spontanée ⦿ Gallio ⦿ Visual Studio Agents 2010 Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 63
  • 64. III. Ms Test face à la concurrence ⦿ Ses Limites ⦿ Pas d’extensibilité sur Les assertions ⦿ Pas d’accès aux méthodes des webSites ⦿ Pas de fourniture de Mocks, mais… ⦿ Nmock3 ( Net 3.5, Net 4.0) ⦿ Moq (->.Net 4.0) ⦿ RhinoMocks ( ->.Net 3.5) Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 64
  • 65. III. Ms Test face à la concurrence ⦿ Synthèse de son positionnement MsTest NUnit Générateur de skeleton intégré et Vitesse d’exécution gratuit Exécutions parallèles Simplicité Bien intégré à TFS Assertions Nombreuses ⦿ Migrer Nunit vs MsTest Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 65
  • 66. Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 66
  • 67. Plan de la présentation I. Rappel sur les Tests unitaires II. Présentation de MS Test III. MsTest face à la Concurrence IV. Les plus de la licence Pro/Ultimate V. Les apports du passage à Visual Studio 2012. Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 67
  • 68. IV. Les plus de la licence Pro/Ultimate Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 68
  • 69. IV. Les plus de la licence Pro/Ultimate Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 69
  • 70. Plan de la présentation I. Rappel sur les Tests unitaires II. Présentation de MS Test III. MS Test face à la Concurrence IV. Les plus de la licence Pro/Ultimate V. Les apports du passage à Visual Studio 2012 Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 70
  • 71. VI. Visual Studio 2012 Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 71
  • 72. VI. Visual Studio 2012 ⦿ Code clone detection ⦿ Code Metrics Values ⦿ Microsoft Fakes isolation framework ⦿ Extend the unit test type Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 72
  • 73. Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 73
  • 74. En Conclusion… ⦿ Sur ses spécificités ⦿ Sur son positionnement ⦿ Son potentiel en fonction des licences ⦿ Son évolution future Les Tests Unitaires sous Visual Studio 2010 Alexandre MEYER et Jade DORVIL Document Propriété de So@t, Diffusion Interdite 74
  • 75. Merci de Votre attention Alexandre MEYER et Jade DORVIL Les Tests Unitaires sous Visual Studio 2010 75 Document Propriété de So@t, Diffusion Interdite