Plan de cours détaillé
Module 1 – Comprendre le rôle de l’IA dans les tests logiciels
- Décrire les principales capacités et limites de l’IA générative dans les tests logiciels.
- Différencier une réponse plausible d’une information réellement testable.
- Évaluer les réponses de l’IA en termes d’exactitude, d’exhaustivité et de pertinence.
- Comprendre l’impact de l’IA sur les responsabilités et la prise de décision du testeur.
Exercice
Analysez votre rôle de testeur, les activités que vous réalisez, les livrables que vous produisez, les informations que vous recevez et les perspectives qui influencent votre travail. Décrivez ces éléments dans un prompt clair, puis demandez à l’IA comment elle pourrait vous aider. Comparez les réponses de plusieurs assistants conversationnels et utilisez des questions complémentaires pour approfondir les résultats.
Module 2 – Passons aux tests !
- Observer comment l’IA génère des cas de test avec peu d’informations.
- Identifier les hypothèses cachées et les détails inventés dans les tests générés.
- Comprendre la différence entre un test crédible en apparence et un test réellement exécutable.
- Comparer et analyser de manière critique les résultats de plusieurs outils d’IA.
Exercice
À partir d’une simple capture d’écran d’une interface utilisateur ou d’une brève description fonctionnelle, demandez à l’IA de générer une série de cas de test pour cette page.
Module 3 – Les tests comme spécifications
- Déduire les exigences et règles métier à partir du comportement observé d’un système.
- Séparer les comportements confirmés des hypothèses et spéculations.
- Identifier et corriger les erreurs dans les exigences générées par l’IA.
- Organiser les exigences à l’aide de taxonomies reconnues afin de révéler les lacunes.
- Utiliser l’IA pour améliorer la traçabilité tout en conservant le jugement du testeur.
Exercice
Demandez à l’IA de lister les exigences implicites des cas de test. Analysez celles qui sont incorrectes ou ambiguës et faites-les corriger. Sélectionnez une taxonomie de classification des exigences et utilisez l’IA pour classer les exigences selon ce modèle. Demandez ensuite la création d’une matrice de traçabilité reliant les exigences aux cas de test aux exigences.
Module 4 — Les données de test
- Expliquer le rôle des données de test dans une couverture efficace.
- Appliquer le partitionnement en classes d’équivalence pour regrouper les conditions d’entrée valides et invalides.
- Appliquer l’analyse des valeurs limites afin d’identifier les conditions aux frontières.
- Distinguer les partitions fondées sur le comportement observé de celles fondées sur des hypothèses.
- Définir explicitement les préconditions et les dépendances de données.
Exercice
Demandez à l’IA de revoir et d’améliorer les tests du calculateur de kilométrage à l’aide du partitionnement en classes d’équivalence et de l’analyse des valeurs limites. Définissez les partitions d’équivalence pour chaque entrée et identifiez les valeurs limites de chaque partition. Faites générer par l’IA des valeurs de données réelles pour les entrées et identifiez les données préexistantes éventuellement nécessaires.
Module 5 — Rendre les tests exécutables
- Identifier les informations nécessaires pour exécuter un test de manière fiable.
- Réécrire des cas de test afin de supprimer les ambiguïtés et les interprétations.
- Définir des résultats observables permettant des décisions réussite/échec claires.
- Évaluer l’exhaustivité et le réalisme des modifications générées par l’IA.
- Reconnaître les détails que l’IA ne peut pas déduire sans connaissance métier.
Exercice
Demandez à vos chatbots d’examiner les cas de test produits lors du dernier exercice afin de déterminer s’ils sont suffisamment clairs et cohérents pour être exécutés sans interprétation. Demandez ensuite à l’IA d’améliorer ces tests en ajoutant des détails et des instructions précises. Enfin, faites traduire ces tests au format Gherkin Given-When-Then.
Module 6 — User stories et scénarios
- Revoir l’objectif et la structure des user stories.
- Comprendre la relation entre critères d’acceptation, scénarios et cas de test.
- Reconnaître que les critères d’acceptation et les scénarios entretiennent une relation plusieurs-à-plusieurs.
- Utiliser l’IA de manière critique pour rédiger des critères d’acceptation et des scénarios.
- Identifier les lacunes et les chevauchements entre stories, critères et tests.
Exercice
À partir d’un ensemble de user stories, collaborez avec l’IA pour définir les critères d’acceptation correspondants. Demandez ensuite à l’IA de rédiger des scénarios et des cas de test nouveaux ou améliorés pour ces stories. Testez chaque story indépendamment puis en combinaison. Enfin, demandez à l’IA de créer un tableau de correspondance entre les stories, les critères d’acceptation et les scénarios / cas de test.
Module 7 — États et couverture de test
- Comprendre l’importance des états et des séquences dans le comportement d’un système.
- Modéliser le comportement d’un système à l’aide d’états et de transitions.
- Identifier les transitions valides et invalides entre les états.
- Raisonner sur la couverture fonctionnelle à partir des états, transitions et invariants.
- Utiliser l’IA pour faciliter la modélisation tout en validant manuellement son exactitude.
Exercice
Utilisez vos chatbots pour créer un modèle d’états illustrant les différents états de l’application d’exemple et les comportements qui provoquent les transitions d’une page à l’autre. Demandez à l’IA de déterminer si les cas de test du dernier exercice couvrent entièrement les chemins possibles dans ce modèle d’états. Si ce n’est pas le cas, quels tests faut-il ajouter ? En bonus, demandez à l’IA de générer une carte de navigation de l’interface pour une version étendue de l’application.
Module 8 — Validation des attributs qualité
- Identifier les exigences non fonctionnelles pertinentes pour un système donné.
- Distinguer les attributs qualité testables des formulations vagues ou non exploitables.
- Évaluer la pertinence des idées de tests non fonctionnels générées par l’IA.
- Prioriser les attributs qualité en fonction du risque et de l’impact.
- Concevoir des tests validant les attributs qualité sélectionnés.
Exercice
Utilisez l’IA pour améliorer des exigences non fonctionnelles formulées de manière vague, les rendre testables et identifier les techniques permettant de les vérifier.
Module 9 — Stratégie et planification des tests
- Distinguer les cas de test d’une stratégie de test.
- Identifier les risques et priorités clés qui orientent les décisions de test.
- Utiliser des cadres de planification pour structurer les activités de test.
- Évaluer de manière critique les éléments de stratégie générés par l’IA.
- Aligner la stratégie de test sur les objectifs métier et techniques.
Exercice
Utilisez l’IA pour créer un Test Strategy Canvas : une vue concise et unique de l’approche globale de test d’une application complète.
Module 10 — Analyse et reporting des anomalies
- Distinguer les anomalies des incompréhensions liées au comportement attendu ou aux évolutions fonctionnelles.
- Analyser les anomalies afin d’identifier leur impact, les risques et les causes racines.
- Évaluer de manière critique les synthèses et catégorisations d’anomalies générées par l’IA.
- Décider quand l’analyse assistée par l’IA apporte de la valeur et quand elle n’en apporte pas.
- Rédiger des rapports d’anomalies clairs et exploitables pour différentes parties prenantes.
Exercice
Demandez aux chatbots IA de proposer une liste d’anomalies potentielles, différents types de risques et un ensemble d’exemples de rapports d’anomalies. Puis, à partir d’une liste de rapports d’anomalies réels, demandez à l’IA de les analyser et de les classer dans un rapport exploitable.
Module 11 — Automatisation des tests
- Évaluer si un scénario de test est adapté à l’automatisation.
- Identifier les prérequis d’une automatisation efficace que l’IA ne peut pas déduire.
- Évaluer de manière critique les scripts d’automatisation générés par l’IA.
- Reconnaître les anti-patterns et risques courants liés à l’automatisation.
- Décider quand les tests manuels ou exploratoires constituent une meilleure option.
Exercice
Même si aucune expérience en programmation ou en outil d’automatisation n’est nécessaire, vous découvrirez la puissance des tests automatisés en observant des démonstrations de différents types d’automatisation. Demandez aux chatbots IA des conseils pour automatiser différents scénarios de test.
Module 12 – Intégrer l’IA dans vos activités de test
- Identifier les domaines à fort potentiel pour expérimenter l’IA dans vos processus de test.
- Planifier des stratégies de conduite du changement et de mesure pour l’adoption de l’IA.
- Développer un cadre éthique pour une utilisation responsable des outils et des données d’IA.
- Créer une feuille de route personnelle ou d’équipe pour intégrer l’IA comme levier de productivité et de qualité.
Exercice
Réfléchissez à votre propre pratique de test et identifiez les domaines où l’IA pourrait réellement apporter de la valeur. Utilisez l’IA pour imaginer de petites expérimentations pilotes à faible risque ainsi que des indicateurs de réussite.