Formation intra-entreprise

Faites intervenir notre équipe de formateurs dans vos locaux pour former vos équipes.

En savoir plus


Bonnes pratiques

Tests unitaires avec PHPUnit

Découvrez les pratiques de tests unitaires et le développement piloté par les tests grâce au framework PHPUnit.


Cette formation vous forme à la pratique des tests unitaires et de l'intégration continue avec PHPUnit.

Prochaines sessions


Aucune session n'est planifiée pour le moment.

Objectifs


En seulement un jour, vous découvrirez comment tester unitairement votre code et surveillez sa qualité au qotidien.


Programme


Introduction aux tests unitaires

  • Définition des tests unitaires
  • Avantages et inconvénients
  • La règle FIRST

Introduction à PHPUnit

  • Introduction à PHP Unit
  • Panorama des projets Open-Source PHP qui utilisent PHPUnit
  • Intégration de PHPUnit avec les IDEs du marché
  • Installation de PHPUnit à l'aide de PEAR
  • TP : Installation de PHPUnit à l'aide de PEAR
    • Ecriture des premières assertions

      • Découverte de l'interface en ligne de commande (CLI)
      • Ecriture d'une première suite de tests
      • Exécution de la suite de tests à l'aide de la ligne de commande
      • TP : Ecriture et exécution d'une suite de tests unitaires avec PHPUnit

      Préparer et initialiser un test

      • Préparer une suite de test à l'aide de la méthode setup()
      • Réinitialiser un contexte de test à l'aide de la méthode tearDown()
      • Créer des données de test (fixtures)
      • TP : initialiser et détruire un contexte de test avec les méthodes setup() et tearDown()

      Développement piloté par les tests

      • Comprendre la méthodologie de développement piloté par les tests (TDD)
      • Principaux avantages du développement piloté par les tests
      • Implémenter du code à l'aide de l'approche TDD
      • TP : fixer du code et le documenter à l'aide d'une approche pilotée par les tests

      Données de test et fournisseur de données

      • Comprendre les concepts de données de tests et de fournisseur de données
      • Créer une methode de génération de données pour tester plusieurs valeurs
      • TP : implémenter un fournisseur de données pour tester les cas limites d'une méthode

      Assertions avancées

      • Tester les exceptions
      • Assertions pour tester les classes et leurs attributs
      • Assertions pour tester des valeurs booléennes
      • Assertions pour tester des chaînes de caractères
      • Assertions pour tester des valeurs XML

      Calculer et analyser la couverture de code

      • Comprendre le concept de couverture de code
      • Vérifier que l'extension XDebug est bien installée et configurer sur le serveur web
      • Générer un rapport de couverture de code depuis la ligne de commande
      • Analyser et comprendre les statistiques et les écrans résultants
      • Comprendre et utiliser l'annotation spéciale @covers
      • Ignorer des lignes de code de la couverture avec @codeCoverageIgnore(Start|End)
      • TP : Implémenter de nouvelles méthodes et leurs tests afin de valider le taux de couverture

      Simuler des comportements avec les objets « mocks »

      • Découverte des objets « mocks »
      • Créer des objets « mocks » avec PHPUnit
      • Tester proprement un modèle de données couplés à des objets « mocks »
      • Valider la couverture de code à l'aide de tests plus élaborés
      • TP : implémenter des objets « mocks » pour simuler des fonctionnements

      Générer des rapports de résultats

      • Exporter les résultats de la suite de tests en XML
      • Exporter les résultats de la suite de tests en JSON
      • Exporter les résultats de la suite de tests en TAP
      • TP : exporter les résultats d'une suite de tests sous différents formats

      Surveiller la qualité du code avec Jenkins

      • Découvrir les pratiques d'intégration continue
      • Installer et exécuter une plateforme d'intégration continue
      • TP : surveiller la suite de tests avec Jenkins

Détails de la session


Code de référence

PHPUNITC1

Prix

Dès 590,00 € HT

Public

Développeurs PHP

Durée

1 jour (7 heures)

Type de formation

Workshop

Thèmes

TDD, tests unitaires, couverture de code, intégration continue

Prérequis

Maîtrise de PHP


Pour tous renseignements

+33 140 998 205

SensioLabs est un organisme de formation enregistré sous le numéro d'activité 11 92 19266 92.

Contactez nous