SlideShare une entreprise Scribd logo

Test unitaires visual studio

SOAT
SOAT
SOATSOAT

Vous avez entendu parler des tests unitaires, vous voulez en faire, mais il vous manque le comment ? OK pour faire des tests Unitaires, mais sans pondre des milliers de lignes de codes, sans réinstaller autre chose ? Votre Visual Studio a la réponse, Alexandre et Jade vous montreront comment tirer parti de MsTest, cet Outil intégré à Visual Studio. Au programme, ils vous feront un court rappel sur les TU, une présentation de l’interface, puis celle du catalogue de possibilités de l’outil, des démonstrations en live, son positionnement par rapport à la concurrence, et les évolutions futures de l’outil.

Test unitaires visual studio

1  sur  76
Télécharger pour lire hors ligne
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

Recommandé

Propulsez votre architecture grâce au TDD et aux Mocks (Agile Tour Québec 2012)
Propulsez votre architecture grâce au TDD et aux Mocks  (Agile Tour Québec 2012)Propulsez votre architecture grâce au TDD et aux Mocks  (Agile Tour Québec 2012)
Propulsez votre architecture grâce au TDD et aux Mocks (Agile Tour Québec 2012)Elapse Technologies
 
Test unitaire
Test unitaireTest unitaire
Test unitaireIsenDev
 
Intro sur les tests unitaires
Intro sur les tests unitairesIntro sur les tests unitaires
Intro sur les tests unitairesPHPPRO
 
Aepsilon - Présentation institutionnelle
Aepsilon - Présentation institutionnelleAepsilon - Présentation institutionnelle
Aepsilon - Présentation institutionnellemyaepsilon
 
12 bonnes raisons de ne pas contrôler vos applications
12 bonnes raisons de ne pas contrôler vos applications12 bonnes raisons de ne pas contrôler vos applications
12 bonnes raisons de ne pas contrôler vos applicationsSolutions IT et Business
 

Contenu connexe

En vedette

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
 

En vedette (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
 

Plus de 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
 

Plus de 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
 

Dernier

Conteneuriser une application .NET 8 en utilisant Docker et Azure.pdf
Conteneuriser une application .NET 8 en utilisant Docker et Azure.pdfConteneuriser une application .NET 8 en utilisant Docker et Azure.pdf
Conteneuriser une application .NET 8 en utilisant Docker et Azure.pdfHamida Rebai Trabelsi
 
Wave_Shutter_user_guide_multilang_print_V3.pdf
Wave_Shutter_user_guide_multilang_print_V3.pdfWave_Shutter_user_guide_multilang_print_V3.pdf
Wave_Shutter_user_guide_multilang_print_V3.pdfDomotica daVinci
 
Shelly Qubini Dry Contact Module Z-Wave Manual
Shelly Qubini Dry Contact Module Z-Wave ManualShelly Qubini Dry Contact Module Z-Wave Manual
Shelly Qubini Dry Contact Module Z-Wave ManualDomotica daVinci
 
Débrief CES 2024 by Niji
Débrief CES 2024 by NijiDébrief CES 2024 by Niji
Débrief CES 2024 by NijiNiji
 
Pour une Autorité française de l’Intelligence Artificielle (IA)
Pour une Autorité française de l’Intelligence Artificielle (IA)Pour une Autorité française de l’Intelligence Artificielle (IA)
Pour une Autorité française de l’Intelligence Artificielle (IA)benj_2
 
JDN 2023 les applications de l'impression 3D.pdf
JDN 2023 les applications de l'impression 3D.pdfJDN 2023 les applications de l'impression 3D.pdf
JDN 2023 les applications de l'impression 3D.pdfAlexandre Contat
 

Dernier (6)

Conteneuriser une application .NET 8 en utilisant Docker et Azure.pdf
Conteneuriser une application .NET 8 en utilisant Docker et Azure.pdfConteneuriser une application .NET 8 en utilisant Docker et Azure.pdf
Conteneuriser une application .NET 8 en utilisant Docker et Azure.pdf
 
Wave_Shutter_user_guide_multilang_print_V3.pdf
Wave_Shutter_user_guide_multilang_print_V3.pdfWave_Shutter_user_guide_multilang_print_V3.pdf
Wave_Shutter_user_guide_multilang_print_V3.pdf
 
Shelly Qubini Dry Contact Module Z-Wave Manual
Shelly Qubini Dry Contact Module Z-Wave ManualShelly Qubini Dry Contact Module Z-Wave Manual
Shelly Qubini Dry Contact Module Z-Wave Manual
 
Débrief CES 2024 by Niji
Débrief CES 2024 by NijiDébrief CES 2024 by Niji
Débrief CES 2024 by Niji
 
Pour une Autorité française de l’Intelligence Artificielle (IA)
Pour une Autorité française de l’Intelligence Artificielle (IA)Pour une Autorité française de l’Intelligence Artificielle (IA)
Pour une Autorité française de l’Intelligence Artificielle (IA)
 
JDN 2023 les applications de l'impression 3D.pdf
JDN 2023 les applications de l'impression 3D.pdfJDN 2023 les applications de l'impression 3D.pdf
JDN 2023 les applications de l'impression 3D.pdf
 

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