Contactez nos conseillers formation : 05 40 05 33 23

Développement agile piloté par les tests (Réf. DA-106)

AccueilINFORMATIQUEAgilitéDéveloppement agile piloté par les tests (Réf. DA-106)
Post Image

Tarif : 1 600 € H.T.Session : Se déroule sur 3 jours.

DESCRIPTION :

Les organisations ayant opté pour la méthodologie agile sont nombreuses à devoir gérer la difficulté de trouver le juste équilibre entre des délais de production accélérés et la livraison de produits de qualité. Cet état de fait a profondément modifié le rôle de l’assurance qualité et posé de nouvelles problématiques à un grand nombre d’organisations agiles en matière de mise en œuvre d’activités de test efficaces et à moindre coût. Au cours de cette formation, vous allez apprendre à utiliser un framework de test agile professionnel conçu pour vous aider à améliorer la qualité de vos produits tant en profitant pleinement des nombreux avantages de la méthode agile.

Cette formation offre également un aperçu complet des différentes techniques de test agiles aux personnes chargées d’assurer la transition vers les processus agiles ou évoluant déjà dans un environnement agile. Vous découvrirez des méthodes de tests logiciels modernes et apprendrez à appliquer ces techniques de test agiles tout au long du cycle de vie d’un projet. Vous verrez également tous les avantages que vous pourrez tirer de la méthodologie agile en termes d’amélioration de la qualité du produit livré. Vous apprendrez aussi à automatiser les tests de qualité tout au long du processus de développement, à définir votre rôle de testeur et à faire partie intégrante d’une équipe agile.

Vous apprendrez notamment à :

  • Optimiser la qualité de vos produits en appliquant des méthodes de test agiles modernes
  • Élaborer une stratégie efficace pour accompagner la migration vers un environnement de test agile
  • Ajouter des activités de test pertinentes au sein du cycle de vie de développement agile
  • Gagner du temps et améliorer la portée du test avec un framework d’automatisation des tests bien conçu
  • Définir le rôle des testeurs de logiciels et de l’assurance qualité dans un environnement agile
  • Investir dans les techniques de test les plus productives afin de maximiser l’efficacité du processus de test

PUBLIC :

Aux personnes chargées du test du développement logiciel, membres des équipes responsables de l’assurance qualité et développeurs de logiciels en charge de la migration vers un environnement agile.

Cette formation s’adresse également aux partitionneurs agiles, assistants à maîtrise d’ouvrage, chefs de projet / produit, ainsi qu’à toute personne souhaitant améliorer ses compétences en matière de tests agiles.

Des connaissances des principes de la méthodologie agile sont utiles. Aucune connaissance particulière de test logiciel n’est obligatoire.

PRÉREQUIS :

Des connaissances des principes de la méthodologie agile sont utiles. Vous devez notamment connaître les ressorts du cycle des itérations et de l’esprit de collaboration qui sous-tendent les méthodologies agiles. Vous pouvez participer à cette formation même si vous n’avez jamais réalisé de tests logiciels.

PROGRAMME :

Durant cette formation les stagiaires aborderont les points suivants :

Théorie générale des tests

  • Évaluer les principes fondamentaux des tests
  • Différencier les pratiques agiles des pratiques traditionnelles
  • Présenter la théorie des tests Lean/Agile

Effectuer la transition vers les processus de développement logiciel agiles

  • Appliquer les valeurs et les principes agiles aux tests
  • Inspecter les quadrants agiles
  • Tirer parti du développement piloté par les tests (TDD, Test-Driven Development)
  • Automatiser les tests pour une meilleure agilité

Acquérir une base de tests

  • Tester la charte et les principales fonctionnalités
  • Se concentrer sur la valeur pour le client et les utilisateurs type (personas)
  • Écrire des cas de test utiles à partir des user stories
  • Développer des critères d’acceptation pour les stories

Automatiser via le développement piloté par les tests d’acceptation (A-TDD, Acceptance Test-Driven Development)

  • Concevoir l’anatomie d’un test agile
  • Créer un catalogue d’idées de tests
  • Raffiner une définition d’un logiciel terminé
  • Anticiper les critères de validation avec le développement piloté par le comportement (BDD, Behavior-Driven Development)

Préparer les tests d’acceptation utilisateur

  • Spécifier à l’aide d’exemples et de scénarios
  • Mettre en place des tests d’utilisabilité et exploratoires
  • Utiliser le story-mapping pour améliorer la couverture
  • Gérer les processus de test

Créer les tests unitaires

  • Définir les unités candidates
  • Définir les données de test
  • Tester d’abord et écrire les assertions d’abord
  • Mettre en place et démonter un test
  • Exploiter des outils pour mieux gérer et analyser la couverture

Maîtriser avec le TDD

  • Obtenir le feu vert
  • Identifier les bons tests
  • Travailler avec de grands systèmes

Employer des techniques de simulation

  • Programmer des objets factices et espions
  • Simuler l’accès aux données
  • Identifier des interfaces et des frameworks de simulation
  • Tester des systèmes existants

Valider pour FURPS+

  • Trouver les schémas de test non fonctionnels
  • Simuler les interfaces et conduire des tests de performance grâce à l’automatisation
  • Évaluer les systèmes existants

Appliquer des tests de non-régression

  • Adopter un catalogue de patterns de refactorisation
  • Identifier des raisons de refactoriser

Valider les modifications en retestant

  • Synchroniser les tests et les modifications du code
  • Ajouter des fonctionnalités et retester
  • Gérer et retester les bogues
  • Tendre vers la tolérance zéro

Livrer le logiciel

  • Mapper le pipeline de déploiement d’Agile
  • Incorporer les principes clé de la gestion de configuration pour les livraisons fréquentes
  • Adapter le contrôle des versions et les stratégies de branchement aux exigences d’Agile

Gérer les pipelines de déploiement

  • Créer un processus de construction et un script de déploiement
  • Contrôler les modifications du code et protéger l’intégrité du produit
  • Intégrer l’automatisation des tests au processus d’intégration continue

Créer un écosystème d’intégration continue

  • Planifier l’infrastructure et les environnements
  • Gérer les composants et les dépendances
  • Mettre en place l’intégration continue