SlideShare une entreprise Scribd logo
1  sur  9
Télécharger pour lire hors ligne
Les Tests Unitaires
Adel ESSAFI
Institut Supérieur de
l’Informatique
Motivation
pour être sûr qu’une application fonctionne
il faut faire des tests
Motivation
Un test : vérifier qu’un système informatique fonctionne
Test manuel : rassurant (naturel) mais pas pratique
Entité de code : fonctionnement répondant à des specifications
Tester la réponse du code vis-à-vis de scenario prédéfinis à
l’avance
filet de sécurité lors de la refactorisation son code
Test Driven Development (TDD) : écrire les tests unitaires
avant d'écrire le code source d'un logiciel
Test Unitaire
Un test un bout de code qui permet de
tester un autre code.
Etapes de test
Arrange, Act, Assert
❖ Arranger : définir les objets nécessaires au bon
fonctionnement de son test
❖ Agir : d’exécuter l’action à tester
❖ Auditer : vérifier que le résultat obtenu est conforme à
nos attentes.
Ecrire un test à la main
static void Main(string[] args)
{
// arranger
int a = 3;
int b = 6;
// agir
int resultat = Addition(a, b);
// auditer
if (resultat != 9)
Console.WriteLine("Echec");
}
Framework de test
fournit un environnement structuré permettant l’exécution de test et des
méthodes
Exemples :
Nunit : framework pour .NET
Junit : framework pour java
Phpunit : framework pour php
…………..
une liste exhaustive : http://en.wikipedia.org/wiki/
List_of_unit_testing_frameworks
Architecture
Test runner
executable qui effectue le test
Test case
classe de base
Test fixtures
preconditions pour effectuer le test
Test suites
ensemble de tests s’integrant dans une meme texture
Test execution
Test result formatter
Produit un reculent lisible par les humains
Assertions
fonction/méthode permettant de verifier une propriété
Exemple avec netbeans

Contenu connexe

En vedette

mis
mismis
mis
ISIG
 
Vbisigk
VbisigkVbisigk
Vbisigk
ISIG
 
Visual studio
Visual studioVisual studio
Visual studio
ISIG
 
Prfc rhapsody simulation_1.0
Prfc rhapsody simulation_1.0Prfc rhapsody simulation_1.0
Prfc rhapsody simulation_1.0
Pascal Roques
 
SysML adoption in France
SysML adoption in FranceSysML adoption in France
SysML adoption in France
Pascal Roques
 
Developpement mobile vs open source
Developpement mobile vs open sourceDeveloppement mobile vs open source
Developpement mobile vs open source
Korteby Farouk
 

En vedette (20)

mis
mismis
mis
 
Vbisigk
VbisigkVbisigk
Vbisigk
 
Visual studio
Visual studioVisual studio
Visual studio
 
Notes de cours d'ordonnancement
Notes de cours d'ordonnancementNotes de cours d'ordonnancement
Notes de cours d'ordonnancement
 
lpi 101 notes de cours
lpi 101 notes de courslpi 101 notes de cours
lpi 101 notes de cours
 
Développement de plug in sous eclipse
Développement de plug in sous eclipseDéveloppement de plug in sous eclipse
Développement de plug in sous eclipse
 
Le microprocesseur
Le microprocesseurLe microprocesseur
Le microprocesseur
 
province nord prés° colloque com verte
province nord prés° colloque com verteprovince nord prés° colloque com verte
province nord prés° colloque com verte
 
Cde com verte cd_ev3
Cde com verte cd_ev3Cde com verte cd_ev3
Cde com verte cd_ev3
 
Poo vb.net
Poo vb.netPoo vb.net
Poo vb.net
 
La réutilisation des eaux usées épurées
La réutilisation des eaux usées épuréesLa réutilisation des eaux usées épurées
La réutilisation des eaux usées épurées
 
النشاط العلمي - الكهرباء
النشاط العلمي  -   الكهرباءالنشاط العلمي  -   الكهرباء
النشاط العلمي - الكهرباء
 
Prfc rhapsody simulation_1.0
Prfc rhapsody simulation_1.0Prfc rhapsody simulation_1.0
Prfc rhapsody simulation_1.0
 
Mix
MixMix
Mix
 
SysML adoption in France
SysML adoption in FranceSysML adoption in France
SysML adoption in France
 
OCCIware Contribution to the EU consultation on Cloud Computing Research Inno...
OCCIware Contribution to the EU consultation on Cloud Computing Research Inno...OCCIware Contribution to the EU consultation on Cloud Computing Research Inno...
OCCIware Contribution to the EU consultation on Cloud Computing Research Inno...
 
Aligning OCL and UML
Aligning OCL and UMLAligning OCL and UML
Aligning OCL and UML
 
OCCIware
OCCIwareOCCIware
OCCIware
 
What fUML can bring to MBSE?
What fUML can bring to MBSE?What fUML can bring to MBSE?
What fUML can bring to MBSE?
 
Developpement mobile vs open source
Developpement mobile vs open sourceDeveloppement mobile vs open source
Developpement mobile vs open source
 

Similaire à les Tests unitaires

Présentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisésPrésentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisés
Djamel Zouaoui
 
Anatomie du test
Anatomie du testAnatomie du test
Anatomie du test
Frederic Hardy
 
PHPTour Lyon 2014 - Conférence - Tests unitaires Je veux mes 80% de couvertur...
PHPTour Lyon 2014 - Conférence - Tests unitaires Je veux mes 80% de couvertur...PHPTour Lyon 2014 - Conférence - Tests unitaires Je veux mes 80% de couvertur...
PHPTour Lyon 2014 - Conférence - Tests unitaires Je veux mes 80% de couvertur...
Cyrille Grandval
 
Cocoaheads Paris Nombembre Test unitaires
Cocoaheads Paris Nombembre Test unitairesCocoaheads Paris Nombembre Test unitaires
Cocoaheads Paris Nombembre Test unitaires
CocoaHeads France
 
Développement en méthode agile
Développement en méthode agileDéveloppement en méthode agile
Développement en méthode agile
laurent bristiel
 

Similaire à les Tests unitaires (20)

TDD (Test Driven Developement) et refactoring
TDD (Test Driven Developement) et refactoringTDD (Test Driven Developement) et refactoring
TDD (Test Driven Developement) et refactoring
 
Présentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisésPrésentation Alt.net - Tests unitaires automatisés
Présentation Alt.net - Tests unitaires automatisés
 
Anatomie du test
Anatomie du testAnatomie du test
Anatomie du test
 
Industrialisation des développements logiciels
Industrialisation des développements logicielsIndustrialisation des développements logiciels
Industrialisation des développements logiciels
 
Les tests behat par la pratique
Les tests behat par la pratiqueLes tests behat par la pratique
Les tests behat par la pratique
 
PHPTour Lyon 2014 - Conférence - Tests unitaires Je veux mes 80% de couvertur...
PHPTour Lyon 2014 - Conférence - Tests unitaires Je veux mes 80% de couvertur...PHPTour Lyon 2014 - Conférence - Tests unitaires Je veux mes 80% de couvertur...
PHPTour Lyon 2014 - Conférence - Tests unitaires Je veux mes 80% de couvertur...
 
J Unit
J UnitJ Unit
J Unit
 
Mise en œuvre de TFS 2010 dans un environnement technologique hétérogène
Mise en œuvre de TFS 2010 dans un environnement technologique hétérogèneMise en œuvre de TFS 2010 dans un environnement technologique hétérogène
Mise en œuvre de TFS 2010 dans un environnement technologique hétérogène
 
Mise en œuvre de TFS 2010 dans un environnement technologique hétérogène
Mise en œuvre de TFS 2010 dans un environnement technologique hétérogèneMise en œuvre de TFS 2010 dans un environnement technologique hétérogène
Mise en œuvre de TFS 2010 dans un environnement technologique hétérogène
 
Cocoaheads Paris Nombembre Test unitaires
Cocoaheads Paris Nombembre Test unitairesCocoaheads Paris Nombembre Test unitaires
Cocoaheads Paris Nombembre Test unitaires
 
Human Talks Grenoble - 11/12/2012 - TDD
Human Talks Grenoble - 11/12/2012 - TDDHuman Talks Grenoble - 11/12/2012 - TDD
Human Talks Grenoble - 11/12/2012 - TDD
 
Développement en méthode agile
Développement en méthode agileDéveloppement en méthode agile
Développement en méthode agile
 
Exposée: Processus de test logiciel
Exposée:  Processus de test logiciel Exposée:  Processus de test logiciel
Exposée: Processus de test logiciel
 
Test unitaires
Test unitairesTest unitaires
Test unitaires
 
7 astuces pour améliorer vos tests unitaires
7 astuces pour améliorer vos tests unitaires7 astuces pour améliorer vos tests unitaires
7 astuces pour améliorer vos tests unitaires
 
Bbl sur les tests
Bbl sur les testsBbl sur les tests
Bbl sur les tests
 
Test unitaires - refactoring - clean code
Test unitaires - refactoring - clean codeTest unitaires - refactoring - clean code
Test unitaires - refactoring - clean code
 
Automatisation des tests - objectifs et concepts - partie 2
Automatisation des tests  - objectifs et concepts - partie 2Automatisation des tests  - objectifs et concepts - partie 2
Automatisation des tests - objectifs et concepts - partie 2
 
Normandy JUG integration Continue
Normandy JUG integration ContinueNormandy JUG integration Continue
Normandy JUG integration Continue
 
Valider par des tests - Blend
Valider par des tests - BlendValider par des tests - Blend
Valider par des tests - Blend
 

Dernier

Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
ikospam0
 
Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdf
AmgdoulHatim
 

Dernier (16)

Cours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiquesCours Généralités sur les systèmes informatiques
Cours Généralités sur les systèmes informatiques
 
L'expression du but : fiche et exercices niveau C1 FLE
L'expression du but : fiche et exercices  niveau C1 FLEL'expression du but : fiche et exercices  niveau C1 FLE
L'expression du but : fiche et exercices niveau C1 FLE
 
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANKRAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
RAPPORT DE STAGE D'INTERIM DE ATTIJARIWAFA BANK
 
les_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhkles_infections_a_streptocoques.pptkioljhk
les_infections_a_streptocoques.pptkioljhk
 
python-Cours Officiel POO Python-m103.pdf
python-Cours Officiel POO Python-m103.pdfpython-Cours Officiel POO Python-m103.pdf
python-Cours Officiel POO Python-m103.pdf
 
Echos libraries Burkina Faso newsletter 2024
Echos libraries Burkina Faso newsletter 2024Echos libraries Burkina Faso newsletter 2024
Echos libraries Burkina Faso newsletter 2024
 
Neuvaine de la Pentecôte avec des textes de saint Jean Eudes
Neuvaine de la Pentecôte avec des textes de saint Jean EudesNeuvaine de la Pentecôte avec des textes de saint Jean Eudes
Neuvaine de la Pentecôte avec des textes de saint Jean Eudes
 
L application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptxL application de la physique classique dans le golf.pptx
L application de la physique classique dans le golf.pptx
 
Télécommunication et transport .pdfcours
Télécommunication et transport .pdfcoursTélécommunication et transport .pdfcours
Télécommunication et transport .pdfcours
 
Apolonia, Apolonia.pptx Film documentaire
Apolonia, Apolonia.pptx         Film documentaireApolonia, Apolonia.pptx         Film documentaire
Apolonia, Apolonia.pptx Film documentaire
 
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projetFormation échiquéenne jwhyCHESS, parallèle avec la planification de projet
Formation échiquéenne jwhyCHESS, parallèle avec la planification de projet
 
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
GIÁO ÁN DẠY THÊM (KẾ HOẠCH BÀI DẠY BUỔI 2) - TIẾNG ANH 6, 7 GLOBAL SUCCESS (2...
 
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptxIntégration des TICE dans l'enseignement de la Physique-Chimie.pptx
Intégration des TICE dans l'enseignement de la Physique-Chimie.pptx
 
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptxCopie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
Copie de Engineering Software Marketing Plan by Slidesgo.pptx.pptx
 
Bilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdfBilan énergétique des chambres froides.pdf
Bilan énergétique des chambres froides.pdf
 
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
CompLit - Journal of European Literature, Arts and Society - n. 7 - Table of ...
 

les Tests unitaires

  • 1. Les Tests Unitaires Adel ESSAFI Institut Supérieur de l’Informatique
  • 2. Motivation pour être sûr qu’une application fonctionne il faut faire des tests
  • 3. Motivation Un test : vérifier qu’un système informatique fonctionne Test manuel : rassurant (naturel) mais pas pratique Entité de code : fonctionnement répondant à des specifications Tester la réponse du code vis-à-vis de scenario prédéfinis à l’avance filet de sécurité lors de la refactorisation son code Test Driven Development (TDD) : écrire les tests unitaires avant d'écrire le code source d'un logiciel
  • 4. Test Unitaire Un test un bout de code qui permet de tester un autre code.
  • 5. Etapes de test Arrange, Act, Assert ❖ Arranger : définir les objets nécessaires au bon fonctionnement de son test ❖ Agir : d’exécuter l’action à tester ❖ Auditer : vérifier que le résultat obtenu est conforme à nos attentes.
  • 6. Ecrire un test à la main static void Main(string[] args) { // arranger int a = 3; int b = 6; // agir int resultat = Addition(a, b); // auditer if (resultat != 9) Console.WriteLine("Echec"); }
  • 7. Framework de test fournit un environnement structuré permettant l’exécution de test et des méthodes Exemples : Nunit : framework pour .NET Junit : framework pour java Phpunit : framework pour php ………….. une liste exhaustive : http://en.wikipedia.org/wiki/ List_of_unit_testing_frameworks
  • 8. Architecture Test runner executable qui effectue le test Test case classe de base Test fixtures preconditions pour effectuer le test Test suites ensemble de tests s’integrant dans une meme texture Test execution Test result formatter Produit un reculent lisible par les humains Assertions fonction/méthode permettant de verifier une propriété