ISTQB Testeur Agile Niveau Fondation - Cours V1.03
ISTQB Testeur Agile Niveau Fondation - Cours V1.03
ISTQB Testeur Agile Niveau Fondation - Cours V1.03
Testeurs expérimentés dans les cycles de vie du développement logiciel (SDLCs) traditionnels
Testeurs débutants intéressés par le test agile
Développeurs expérimentés avec des connaissances de base en matière de tests et travaillant
sur des projets agiles
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 3
Objectifs opérationnels
Bref, un testeur certifié de niveau Fondation Testeur Agile doit savoir travailler
efficacement au sein d'une équipe et d'un environnement Agile.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 4
Plan du cours
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 5
1. Développement logiciel Agile
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 7
1.1.1 Le manifeste Agile
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 8
1.1.1 Le manifeste Agile
Un logiciel opérationnel est beaucoup plus utile et profitable qu’une documentation très
détaillée et permet de fournir des feedbacks rapides à l'équipe de développement.
Un logiciel opérationnel, même avec des fonctionnalités réduites, disponible beaucoup
plus tôt peut être un avantage déterminant en termes de time-to-market.
Le développement en mode Agile est donc particulièrement utile dans les secteurs qui
évoluent très rapidement où les problèmes ne sont pas clairs et/ou les solutions
sont innovantes.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 9
1.1.1 Le manifeste Agile
Les clients rencontrent souvent beaucoup de difficultés à exprimer le système dont ils ont
besoin.
Collaborer directement avec le client améliore les chances de comprendre exactement ce
dont il a besoin.
Bien qu’avoir des contrats avec les clients puisse être important, travailler en collaboration
étroite et régulière avec eux augmente les chances de succès du projet.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 10
1.1.1 Le manifeste Agile
S’adapter au changement
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 11
1.1.1 Le manifeste Agile Les 12 principes sous-jacents
Excellence technique
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 12
1.1.2 Approche d’équipe Intégrée
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 13
1.1.2 Approche d’équipe Intégrée
L’approche équipe intégrée est un des principes fondamentaux des développements Agile. Les
bénéfices incluent :
L’amélioration de la communication et de la collaboration au sein de l'équipe
L’utilisation des diverses compétences au sein de l'équipe au profit du projet
La Qualité qui devient de la responsabilité de toute l’équipe
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 14
1.1.2 Approche d’équipe Intégrée
Les testeurs, les développeurs et les représentants Métier travaillent ensemble à chaque
étape du processus de développement pour s'assurer que les niveaux de qualité
souhaités sont atteints. Cela inclut, pour les testeurs :
de soutenir et collaborer avec les représentants des Métiers pour les aider à créer des
tests d'acceptation pertinents,
de travailler avec les développeurs pour s'entendre sur la stratégie de test, et s’accorder
sur les approches d'automatisation des tests.
Les testeurs peuvent ainsi transférer et étendre la connaissance du test aux autres membres
de l'équipe et influencer le développement du produit.
Le concept d’impliquer toute l’équipe, les testeurs, les développeurs et des représentants
Métier, dans toute présentation, analyse ou estimation des caractéristiques du produit est
connu comme le « pouvoir des trois » ou encore les « 3 amigos ».
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 15
1.1.3 Un feedback au plus tôt et fréquent
Avec les approches de développement séquentielles, le client ne voit pas le produit avant
que le projet ne soit pratiquement terminé. À ce stade, il est souvent trop tard pour l'équipe
de développement de s’occuper efficacement des points que le client souhaiterait adresser.
Les projets Agiles ont des itérations courtes afin que l'équipe projet puisse recevoir des
feedbacks au plus tôt et continus sur la qualité des produits tout au long du cycle de
développement.
En recevant un feedback client fréquent au cours de la progression du projet, les équipes
Agiles peuvent intégrer la plupart des nouveaux changements dans le processus de
développement du produit.
Un feedback précoce et fréquent aide à mettre l'accent sur les fonctionnalités qui ont la plus
haute valeur Métier, ou les risques associés les plus importants, et celles-ci sont
livrées en premier au client.
Il permet également de mieux manager l’équipe puisque l’aptitude de l’équipe est
partagée avec tous. Par exemple,
Quelle quantité de travail peut-on faire dans un sprint ou une itération ? (vélocité)
Qu’est-ce qui pourrait nous aider à aller plus vite ? (accélérateurs)
Qu’est-ce qui nous empêche de le faire ? (freins)
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 16
1.1.3 Un feedback au plus tôt et fréquent
Avantages :
Eviter les incompréhensions sur les exigences qui n’auraient été décelées que plus
tard dans le cycle de développement lorsqu’elles sont plus coûteuses à corriger
Clarifier les fonctionnalités que le client demande, les rendant disponibles au plus tôt
pour les clients afin que le produit reflète mieux ce que veut le client
Découvrir, isoler et résoudre tôt les problèmes
Être transparent sur la productivité et la capacité à livrer de l’équipe Agile
Promouvoir une dynamique de projet durable
Une façon de fournir un feedback rapide est l’intégration continue (voir la Section 1.2.4).
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 17
Quiz Time !
Le Manifeste Agile comporte 4 déclarations sur les valeurs. Faites correspondre la valeur agile de
gauche (1-4) avec sa contrepartie traditionnelle de droite (i-iv).
1) La collaboration avec les clients plus que i) Les processus et les outils
2) L'adaptation au changement plus que ii) Le suivi d'un plan
3) Les individus et leurs interactions plus que iii) La négociation contractuelle
4) Des logiciels opérationnels plus que iv) Une documentation exhaustive.
Jeu de réponses :
A. 1 - iii, 2 - iv, 3 - ii, 4 – i
B. 1 - iii, 2 - ii, 3 - i, 4 – iv
C. 1 - iv, 2 - ii, 3 - i, 4 – iii
D. 1 - ii, 2 - iii, 3 - iv, 4 - i
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 18
Quiz Time !
Lequel des énoncés suivants reflète le mieux l'une des valeurs du Manifeste Agile ?
Jeu de réponses :
A. Un logiciel opérationnel permet au client de fournir un feedback rapide au développeur.
B. Les développeurs devraient utiliser des outils de test unitaire pour soutenir le processus de
test.
C. Les représentants Métier devraient fournir à l'équipe un backlog de user stories avec leurs
estimations.
D. Adapter les plans aux changements n'ajoute pas de valeur réelle à un projet agile.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 19
Quiz Time !
Quelles sont les DEUX activités ci-dessous qui représentent le mieux les responsabilités qui sont
compatibles avec l'approche d'équipe intégrée du développement agile ?
Sélectionnez DEUX options.
Jeu de réponses :
A. Les testeurs sont responsables du développement des tests unitaires qu'ils transmettent aux
développeurs pour les tests.
B. On attend des représentants Métier qu'ils choisissent les outils que l'équipe utilisera au cours
du projet.
C. On attend des testeurs qu'ils travaillent avec les représentants des clients pour créer des tests
d'acceptation.
D. Toute l'équipe, et pas seulement les testeurs, est responsable de la qualité du produit.
E. On attend des développeurs qu'ils testent les exigences non fonctionnelles (performance,
convivialité, sécurité, etc.).
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 20
Quiz Time !
Lequel des éléments suivants est un avantage d'avoir toute l'équipe responsable de la qualité ?
Jeu de réponses :
A. Les entreprises n'ont plus besoin de recruter et de former des spécialistes du test de logiciels.
B. Les tâches d'automatisation des tests sont maintenant la responsabilité de l'équipe de
développement plutôt que de l'équipe de test.
C. Les obstacles liés aux rôles sont éliminés et les membres de l'équipe contribuent à la réussite
du projet en fonction de leurs compétences et perspectives particulières.
D. Les coûts du projet sont moins élevés parce qu'il n'est plus nécessaire de faire appel à une
équipe de test spécialisée.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 21
Quiz Time !
Lequel des éléments suivants est un avantage du feedback précoce et fréquent favorisé par le
processus agile ?
Jeu de réponses :
A. Le nombre total de défauts trouvés au cours du projet est beaucoup plus élevé que sur les
projets traditionnels de développement de logiciels comme le modèle en cascade.
B. Il y a moins de reprises parce que les clients voient le produit régulièrement.
C. Il est facile de déterminer le développeur qui introduit le plus de défauts lors de l'intégration
du code.
D. Il y a assez de temps pour terminer toutes les fonctionnalités prévues pour l'itération donnée.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 23
1. Développement logiciel Agile
Chacune des approches Agile implémente les valeurs et les principes du manifeste
Agile de différentes manières. Examinons trois implémentations représentatives de ces
approches Agiles :
Extreme Programming (XP),
Scrum,
Kanban.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 25
1.2.1 Approches de développement logiciel Agile
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 26
1.2.1 Approches de développement logiciel Agile
Humanité : Un logiciel est développé par des personnes, prendre en compte leurs besoins
est la clé principale pour fournir des logiciels de qualité
Économie : Assurez-vous que ce que vous faites a de la valeur pour le client
Bénéfice mutuel : Chaque activité doit profiter à toutes les parties concernées
Similitude : Essayez de réutiliser des solutions similaires, dans des contextes différents
Amélioration : Chaque jour, vous devez vous efforcer d'agir au mieux de vos capacités,
mais aussi de réfléchir à quoi faire pour être encore plus performant demain.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 28
1.2.1 Approches de développement logiciel Agile
Extreme Programming : Principes (2/3)
Diversité : Les équipes doivent avoir des connaissances, des compétences et des
caractères différents pour être en mesure de découvrir et de résoudre les problèmes
Réflexion : Prendre le temps de réfléchir à la manière dont le projet fonctionne et aux
améliorations possibles
Flux : Seul un flux continu permet de s'assurer que le système évolue dans la bonne
direction et d'éviter les problèmes liés à l'intégration finale "big-bang"
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 29
1.2.1 Approches de développement logiciel Agile
Extreme Programming : Principes (3/3)
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 30
1.2.1 Approches de développement logiciel Agile
Extreme Programming : Pratiques primaires
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 31
1.2.1 Approches de développement logiciel Agile
Extreme Programming : Pratiques primaires
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 32
1.2.1 Approches de développement logiciel Agile
Extreme Programming : Pratiques primaires
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 33
1.2.1 Approches de développement logiciel Agile
Extreme Programming : Pratiques primaires
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 34
1.2.1 Approches de développement logiciel Agile
Scrum est un Framework de management Agile qui contient les éléments et règles
suivants :
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 35
1.2.1 Approches de développement logiciel Agile
Definition of Done
La Définition du Terminé permet d’assurer qu’il y a un produit potentiellement livrable à
chaque fin de sprint, l’équipe Scrum discute et définit les critères appropriés pour la
complétude du sprint.
La discussion dépend de la compréhension par l’équipe des éléments du backlog et des
exigences Produit.
Exemple de DoD :
• La revue de code a été effectuée
• Les tests définis dans la User Story ont été réalisés et passés avec succès
• Le Product Owner a vu la démo et a validé le fonctionnement
• Des éléments techniques peuvent également être inclus le cas échéant : des stress tests ont été
réalisés, la documentation concernant l’architecture est fournie…
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 36
1.2.1 Approches de développement logiciel Agile
Timeboxing : Seules les tâches, les exigences, ou les fonctionnalités que l’équipe souhaite
finir dans le sprint font partie du backlog de sprint.
Si l’équipe de développement ne peut pas finir une tâche lors d’un sprint, la fonctionnalité
du produit associée est supprimée du sprint et est replacée dans le backlog Produit.
Le Timeboxing s’applique non seulement aux tâches, mais à d’autres situations (ex :
respecter les heures de début et de fin des réunions).
Transparence: L’équipe de développement rapporte et met à jour le statut du sprint sur une
base journalière appelée le Daily Scrum. Cela permet de rendre visible le contenu et
l’avancement du sprint en cours, en incluant les résultats de test, pour l’équipe de
management et toutes les parties intéressées.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 37
1.2.1 Approches de développement logiciel Agile
Le Scrum Master :
• assure que les pratiques et les règles Scrum sont implémentées et suivies, et résout toute
violation, problème de ressource, ou tout autre blocage qui pourrait empêcher l’équipe de suivre
les pratiques et les règles.
• Le Scrum Master n’est pas le chef de l’équipe, mais un coach.
Le Product Owner :
• génère, maintient, et priorise le backlog produit ; valide l’incrément produit lors de la démo
• Le Product Owner n’est pas le chef de l’équipe, il représente le client
L’équipe de développement :
• développe et teste le produit.
• L’équipe est autoorganisée et prend ses décisions (il n’y a pas de chef d’équipe)
• L’équipe est pluridisciplinaire (voir Section 2.3.2 et Section 3.1.4).
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 38
1.2.1 Approches de développement logiciel Agile
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 39
1.2.1 Approches de développement logiciel Agile
Kanban est une approche de management souvent utilisée dans les projets Agile.
L’objectif général est de visualiser et d’optimiser le flux de travail dans une chaîne de
valeur ajoutée (livrer au plus tôt les items de plus grande valeur).
La visualisation du travail en cours (sur un tableau Kanban) : tout le monde peut voir à
tout moment ce qui est développé et par qui
La limitation de la quantité de travail en cours (Work In Progress ou WIP) : on fixe un
nombre maximal d’items à chaque étape du Kanban sur lesquels les personnes assignées
peuvent travailler afin d’éviter la dispersion de l’équipe et les goulots d’étranglement pour
passer d’une étape à l’autre.
Le travail en flux tiré : c’est la demande (en aval) qui tire le travail et non l’inverse. On
produit ainsi juste à temps, en limitant les gaspillages.
Le Timeboxing est optionnel, contrairement à Scrum qui synchronise toutes les tâches dans
un sprint. Le processus Kanban permet de livrer élément par élément en continu.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 40
1.2.1 Approches de développement logiciel Agile
Kanban comporte des similitudes avec Scrum. Dans les deux frameworks, visualiser les tâches
actives sur un tableau donne de la transparence sur le contenu et la progression des tâches.
Les tâches non encore planifiées sont priorisées et en attente dans un backlog et déplacées sur
le tableau Kanban au fur et à mesure de leur avancement.
Mais Kanban régule le flux en imposant des limites de WIP sur chaque phase, ce qui met en
évidence les goulets d’étranglements et incite à les débloquer plutôt que d’empiler du travail en
attente.
Le principe est « Arrêtez de commencer (des tâches), commencez par terminer ! (celles
en cours) ».
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 41
1.2.2 Création collaborative de User Story
Les spécifications sont souvent une des raisons majeures de l’échec de projets. Les
problèmes de spécification peuvent résulter du manque de vision des utilisateurs dans leurs
besoins réels, de l’absence de vision globale du système, des fonctionnalités redondantes ou
contradictoires, et autres problèmes de communication.
Dans un cycle de développement séquentiel, cette vision partagée des fonctionnalités est
donnée au travers des revues formelles après que les exigences soient écrites.
Dans un développement Agile, les User Story sont écrites pour capturer les exigences selon le
point de vue des développeurs, des testeurs, et des représentants Métier.
Dans un projet Agile, cette vision est donnée à travers des revues informelles fréquentes
en même temps que les exigences sont écrites.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 42
1.2.2 Création collaborative de User Story
Les User Story doivent adresser à la fois les caractéristiques fonctionnelles et non-
fonctionnelles.
Chaque Story inclut des critères d’acceptation pour ces caractéristiques.
Ils donnent une vision étendue de la fonctionnalité aux développeurs et aux testeurs,
fonctionnalité que les représentants Métier vont valider.
Une équipe Agile considère une tâche terminée quand un ensemble de critères d’acceptation
ont été satisfaits.
Ces critères devraient être définis par une collaboration entre les représentants
Métier, les développeurs, et les testeurs.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 43
1.2.2 Création collaborative de User Story
Cette paternité collaborative de la User Story peut nécessiter de mettre en
œuvre des techniques comme le brainstorming ou le mind-mapping.
Typiquement, la vision du testeur va améliorer la User Story en identifiant
des détails manquants ou des exigences non fonctionnelles.
Un testeur peut contribuer en posant des questions ouvertes sur la User Story aux
représentants Métier, en proposant des façons de tester la User Story, et de confirmer les
critères d’acceptation.
Le testeur peut utiliser la technique INVEST pour les user stories :
Independent : ne doivent pas dépendre d'autres stories
Negotiable : doivent exprimer l'essentiel du besoin pour pouvoir être discutées
Valuable : doivent clairement illustrer la valeur apportée au client
Estimable : doivent fournir assez d'informations pour une estimation approchée
Small : la granularité doit être suffisante pour qu'elles puissent être réalisées en aussi peu
de temps que possible
Testable : doivent pouvoir être testées (un moyen efficace d'assurer la testabilité consiste
à définir des critères d'acceptation pour chaque user story)
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 44
1.2.2 Création collaborative de User Story
Selon le concept des 3C, une User Story est la conjonction de trois éléments :
Carte: La carte est le media physique décrivant la User Story et ses bénéfices attendus.
Elle identifie l’exigence, sa criticité, les temps de développement et de test, et les critères
d’acceptation pour cette User Story. La description doit être précise, car elle sera utilisée
dans le backlog produit.
Conversation : La conversation explique comment le logiciel sera utilisé. La conversation
peut être documentée ou verbale. Les testeurs ayant des points de vue différents des
développeurs et des représentants Métier apportent des éléments de valeur pour échanger
sur des idées, opinions, et expériences.
La Conversation commence pendant la phase de planification de la release et
continuera quand la User Story sera planifiée (dans un sprint par exemple).
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 45
1.2.2 Création collaborative de User Story
Confirmation: Les critères d’acceptation, discutés dans la Conversation, sont utilisés pour
confirmer que la User Story est terminée.
• Ces critères d’acceptation peuvent s’étendre sur plusieurs User Stories.
• Des tests à la fois positifs et négatifs devraient être mis en œuvre pour couvrir les critères.
• Pendant la confirmation, différents participants peuvent jouer le rôle de testeur (développeurs ou
spécialistes en performance, sécurité, interopérabilité, et autres caractéristiques qualité).
• Pour considérer une User Story comme terminée (Done), les critères d’acceptation définis
devraient être testés et leur atteinte démontrée.
Quelle que soit l’approche mise en œuvre pour documenter les User Story, la documentation
devrait être :
concise,
suffisante,
et nécessaire.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 46
1.2.3 Rétrospectives
Une rétrospective est une réunion qui se tient à la fin de chaque itération pour discuter de
ce qui est réussi, de ce qui peut être amélioré, et comment intégrer les améliorations tout
en conservant ce qui est réussi dans les itérations futures.
Les rétrospectives couvrent des éléments comme le processus, les personnes, l’organisation, le
relationnel, et les outils.
Conduites régulièrement, les rétrospectives sont essentielles pour l’auto-organisation et
l’amélioration continue du développement et des tests.
En général, les équipes devraient implémenter seulement quelques améliorations par
itération. Ceci permet une amélioration continue à un rythme soutenable.
Les représentants Métier et l’équipe participent à chaque rétrospective. Dans certains cas,
l’équipe peut inviter d’autres participants à la réunion.
Les rétrospectives doivent se dérouler dans un environnement professionnel de confiance
mutuelle. Les caractéristiques d’une rétrospective réussie sont les mêmes que celles pour tout
autre revue.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 47
1.2.4 Intégration Continue
La livraison de l’incrément d’un produit requiert qu’il soit fiable, qu’il fonctionne, et qu’il soit
intégré dans le logiciel à la fin de chaque sprint.
L’intégration continue permet ce challenge en fusionnant tous les changements faits au logiciel
et en intégrant régulièrement tous les composants modifiés, au moins une fois par jour.
La gestion de configuration, la compilation, le Build du logiciel, son déploiement, et les tests
sont inclus dans un processus simple, automatisé, et répétitif.
Puisque les développeurs intègrent, buildent et testent leur travail constamment, les défauts
dans le code sont détectés plus rapidement.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 48
1.2.4 Intégration Continue
Check-in
Codage,
Debuggage
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 49
1.2.4 Intégration Continue
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 50
1.2.4 Intégration Continue
L’intégration continue permet aux testeurs Agile d’effectuer les tests automatisés
régulièrement et envoie des feedbacks rapides à l’équipe sur la qualité du code.
Ces résultats de test sont visibles de tous les membres de l’équipe en particulier quand des
rapports automatisés sont intégrés au processus.
Les tests de régression automatisés peuvent être continus tout au long de l’itération.
Une bonne couverture dans les tests de régression automatisés aide à construire (et à tester)
de grands systèmes intégrés.
Lorsque le test de régression est automatisé, les testeurs Agiles sont libérés pour concentrer
leurs tests manuels sur les nouvelles fonctionnalités, les changements implémentés
et les tests de confirmation.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 51
1.2.4 Intégration Continue
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 52
1.2.4 Intégration Continue
Déploiement
Les outils de build peuvent être liés à des outils de déploiement automatique, qui peuvent
récupérer le build approprié à partir de l'intégration continue ou du serveur de build et le
déployer dans un ou plusieurs environnements de développement, test, pré-production ou
même en production.
Cela réduit les erreurs et les délais associés au recours à du personnel spécialisé ou à des
programmeurs pour installer les versions dans ces environnements.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 53
1.2.4 Intégration Continue
Bénéfices
Permet la détection au plus tôt et facilite l’analyse des causes racines des problèmes dus à
l’intégration et à des changements conflictuels
Donne un feedback régulier à l’équipe de développement pour confirmer que le code
fonctionne.
Maintient un délai d'un jour maximum entre la version du logiciel testé et la version en
cours de développement.
Réduit le risque de régression associé au refactoring du code du développeur grâce à un
re-test rapide de la base de code après chaque petite série de modifications.
Assure que le travail de développement de chaque jour s’appuie sur une base solide
Rend visible l'avancement vers l'achèvement de l'incrément du produit, en motivant les
développeurs et les testeurs
Élimine les risques plannings associés à une intégration big-bang
Fournit une disponibilité constante du logiciel exécutable tout au long du sprint à des fins
de test, de démonstration ou de formation
Réduit les activités répétitives de tests manuels
Fournit un feed-back rapide sur les décisions prises pour améliorer la qualité et les tests
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 54
1.2.4 Intégration Continue
Risques et challenges
Les outils d’intégration continue doivent être mis en place et maintenus
Le processus d’intégration continue doit être défini et établi
L’automatisation des tests requiert des ressources additionnelles et peut être complexe à
mettre en place
Une couverture de test étendue est essentielle pour que les avantages des tests
automatisés soit réels
Les équipes font parfois trop confiance aux tests unitaires et font trop peu de tests
systèmes et d’acceptation
L’intégration continue requiert l’utilisation d’outils incluant les outils de test, les outils
d’automatisation du processus de Build, et les outils de contrôle de version.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 55
1.2.5 Planification de release et d’itérations
La planification est une activité continue, et c'est également le cas dans les cycles de vie
Agile.
Pour les cycles de vie Agile, deux types de planification interviennent, la planification des
releases et la planification des itérations.
La planification de release couvre jusqu’à la release du produit, et est souvent faite
quelques mois avant le début du projet. Le planning de release définit et redéfinit le backlog
de produit, et peut impliquer de raffiner des User Story trop grosses en un ensemble de
Story plus petites.
Le planning de release fournit les bases pour une approche de tests et un plan de
test couvrant toutes les itérations.
Les plans de Release sont de haut niveau.
Une fois la planification de release terminée, la planification d’itération pour la première
itération commence.
La planification d’itération va jusqu’à la fin d’une seule itération et est liée au backlog
d’itération.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 56
1.2.5 Planification de release et d’itérations
Planification de release
Pendant la planification de release, les représentants Métier établissent et priorisent les User
Story pour la release, en collaboration avec l’équipe (voir Section 1.2.2).
Basés sur ces User Story, les risques projet et qualité sont identifiés et une estimation
macroscopique de l’effort est effectuée (voir Section 3.2).
Les testeurs sont impliqués dans la planification de release et apportent de la valeur ajoutée
en particulier dans les activités suivantes :
Définir des User Story testables, incluant des critères d’acceptation
Participer aux analyses de risque projet et qualité
Estimer l’effort de test associé aux User Story
Définir les niveaux de test nécessaires
Planifier les tests pour la release
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 58
1.2.5 Planification de release et d’itérations
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 59
1.2.5 Planification de release et d’itérations
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 60
1.2.5 Planification de release et d’itérations
Changements (1/2)
Les plans de release peuvent changer en cours de projet, en incluant des changements
sur les User Story individuelles dans le backlog de produit.
Ces changements peuvent être dus à des facteurs internes ou externes.
Les facteurs internes incluent les capacités à délivrer, la vélocité, et les problèmes
techniques.
Les facteurs externes incluent la découverte de nouveaux marchés et opportunités, de
nouveaux concurrents, ou des menaces liées au métier qui peuvent changer les objectifs
de release et/ou les dates prévues.
De plus, les plans d’itération peuvent changer pendant une itération.
Par exemple, une User Story particulière qui était considérée relativement simple lors de
l’estimation peut s’avérer plus complexe que prévue.
Ces changements peuvent s’avérer difficiles pour les testeurs.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 61
1.2.5 Planification de release et d’itérations
Changements (2/2)
Pour planifier les tests, les testeurs doivent avoir une image globale de la release.
Pour développer des tests, ils doivent avoir une base de test adéquate avec des oracles
de test à chaque itération.
Les informations requises doivent être disponibles tôt pour le testeur, et pourtant les
changements doivent être adoptés selon les principes Agile.
Ce dilemme requiert des décisions réfléchies au sujet des stratégies de test et de la
documentation des tests afin de faire face aux challenges des tests Agile (cf. slide suivant).
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 62
1.2.5 Planification de release et d’itérations
Pour plus d’informations sur les challenges des tests Agile, voir [Rex Black, “Managing the
Testing Process: Practical Tools and Techniques for Managing Hardware and
Software Testing, 3e,” Wiley, 2009.], Chapitre 12.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 63
Quiz Time !
Faites correspondre les approches de développement logiciel agiles suivantes (1, 2, 3) avec leurs
descriptions correspondantes (I, II, III).
1) Extreme Programming
2) Scrum
3) Kanban
I. Adopte 5 valeurs pour guider le développement : Communication, simplicité, feedback, courage
et respect
II. Divise le projet en courtes itérations appelées sprints.
III. Optimise le " flux " du travail dans une chaîne de valeur ajoutée.
Jeu de réponses :
A. 1-iii, 2-i, 3-ii
B. 1-i, 2-ii, 3-iii
C. 1-ii, 2-iii, 3-i
D. 1-iii, 2-ii, 3-i
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 64
Quiz Time !
Au cours d'une réunion de planification d'itération, l'équipe partage ses réflexions sur une user
story. Le Product Owner indique que le client devrait avoir un seul écran pour entrer l'information.
Le développeur explique qu'il y a des limites techniques à cette caractéristique, en raison de la
quantité d'informations qu'il faut saisir à l'écran. Un autre développeur affirme qu'il y a des
risques quant aux performances car l'information sera stockée dans une base de données externe
hors site.
Lequel des éléments suivants représenterait le mieux la contribution d'un testeur à cette
discussion ?
Jeu de réponses :
A. Le testeur indique qu'il faut que l'écran pour la user story soit sur une seule page pour réduire
l'effort d'automatisation du test.
B. Le testeur indique que l'utilisabilité est plus importante que la performance.
C. Le testeur conseille que les critères d'acceptation des performances devraient être d'une
seconde maximum pour le stockage des données.
D. Le testeur indique que la user story a besoin de critères d'acceptation pour être testable.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 65
Quiz Time !
Lequel des énoncés suivants décrit le MIEUX un testeur qui participe à une rétrospective ?
Jeu de réponses :
A. En tant que testeur participant à une rétrospective, je devrais aborder des sujets qui ne sont
liés qu'aux tests. Tous les autres sujets seront abordés par d’autres participants.
B. En tant que testeur, je participe à une rétrospective en tant qu'observateur, en m'assurant que
la réunion respecte les règles de rétrospectives et les valeurs agile.
C. En tant que testeur participant à une rétrospective, je devrais fournir des commentaires et des
suggestions sur toutes les activités menées par l'équipe pendant le sprint.
D. En tant que testeur, je ne devrais assister et participer à une rétrospective que si j'ai des
commentaires et des suggestions concernant les activités menées par l'équipe pendant le sprint.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 66
Quiz Time !
Lequel des points suivants NE devrait PAS être soulevé au cours d'une rétrospective ?
Jeu de réponses :
A. Il faudrait mettre davantage l'accent sur les tests unitaires à l'avenir, afin d'améliorer la qualité
globale.
B. Le processus de build est manuel et prend trop de temps. La recherche et la mise en œuvre
d'un framework de build automatisé devraient être effectuées.
C. Le testeur XYZ lutte pour trouver des défauts. Une formation en conception de tests est
requise pour cette ressource.
D. Les suites de tests de régression automatisés prennent trop de temps à s'exécuter. Une revue
des tests, afin d'éliminer des tests redondants ou inutiles est nécessaire.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 67
Quiz Time !
Jeu de réponses :
A. L'intégration continue permet faire des builds réguliers des logiciels modifiés, incluant les tests
et le déploiement, d'une manière automatisée.
B. L'intégration continue permet aux testeurs et aux parties prenantes de disposer fréquemment
de nouvelles versions.
C. L'intégration continue permet d'identifier rapidement les nouveaux défauts d'intégration et
facilite l'analyse de ces défauts.
D. L'intégration continue garantit que les tests des builds sont effectués manuellement, car cela
génère des résultats plus fiables que les scripts automatisés.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 68
Quiz Time !
Jeu de réponses :
A. Produire une liste de tests d'acceptation pour les user stories.
B. Aider à décomposer user stories en tâches plus petites et plus détaillées.
C. Estimer les tâches de test générées par les nouvelles fonctionnalités prévues pour cette
itération.
D. Aider à clarifier les user stories et s'assurer qu'elles soient testables.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 69
1. Développement logiciel Agile
Termes à retenir
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 71
Termes à retenir
Manifeste Agile : Une déclaration sur les valeurs qui sous-tendent le développement
logiciel Agile. Ces valeurs sont :
Les individus et leurs interactions plus que les processus et les outils
Des logiciels opérationnels plus qu’une documentation exhaustive
La collaboration avec les clients plus que la négociation contractuelle
L’adaptation au changement plus que le suivi d’un plan
Modèle de développement incrémental : Un modèle de cycle de vie du développement
dans lequel la portée du projet est généralement déterminée au début du cycle de vie du
projet, mais les estimations de temps et de coûts sont régulièrement modifiées à mesure
que l'équipe du projet comprend mieux le produit. Le produit est développé au moyen
d'une série de cycles répétés, chacun fournissant un incrément qui ajoute successivement
à la fonctionnalité du produit.
Modèle de développement itératif : un modèle de cycle de développement où le projet
est séparé en un nombre d’itérations (souvent nombreuses). Une itération est une boucle
complète de développement résultant en une livraison (interne ou externe) d’un produit
exécutable, un sous-ensemble du produit final en développement, qui grandit d’itération
en itération pour devenir le produit fini.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 72
Termes à retenir
Oracle de test : Source utilisée pour déterminer les résultats attendus à comparer avec
les résultats obtenus de l’application en cours de test.
User Story : Une exigence d'utilisateur ou métier de haut niveau communément utilisée
dans le développement de logiciels Agile, qui consiste généralement en une phrase dans
le langage courant ou le langage métier capturant la fonctionnalité dont un utilisateur a
besoin et la raison de ce besoin, les critères non fonctionnels, ainsi que les critères
d'acceptation.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 73
Quiz Time !
Quelle est l'explication la plus appropriée d'une " user story " ?
Jeu de réponses :
A. Un artefact que le testeur doit examiner et approuver avant que le test puisse commencer.
B. Un artefact utilisé pour détailler uniquement les exigences fonctionnelles du système.
C. Un artefact documenté par les représentants Métier pour aider les développeurs et les testeurs
à comprendre les exigences du système.
D. Un artefact écrit en collaboration par des développeurs, des testeurs et des représentants
Métier pour capturer les exigences.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 74
2 Principes, Pratiques, et Processus
fondamentaux Agile
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 76
2.1 Les différences des tests entre les approches traditionnelles
et Agile
Les organisations varient considérablement dans l’implémentation de leur cycle de vie.
Des déviations des cycles de vie Agile idéaux (voir Section 1.1) peuvent être en fait des
personnalisations intelligentes et une adaptation des pratiques.
La capacité à s’adapter au contexte d’un projet donné, en incluant les pratiques de
développement logiciel réellement suivies, est un facteur clé de succès pour les testeurs.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 77
2.1.1 Activités de test et de développement
Quand le périmètre de l’itération est établi, les User Story sélectionnées sont développées,
intégrées dans le système, et testées.
Ces itérations sont hautement dynamiques, avec un développement, une intégration, et des
activités de test, effectuées avec un parallélisme et des chevauchements considérables.
Les activités de test se déroulent tout au long de l’itération, et ne sont pas une activité
finale.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 78
2.1.1 Activités de test et de développement
Rôles
Les testeurs, développeurs, et les parties prenantes Métier ont tous un rôle concernant le
test, tout comme dans les cycles de vie traditionnels.
Les développeurs exécutent des tests unitaires au moment où ils développent les
fonctionnalités à partir des User Story.
Les testeurs testent ensuite ces fonctionnalités.
Les parties prenantes Métier testent également les Story pendant l’implémentation.
Les parties prenantes Métier peuvent utiliser des cas de test écrits, mais ils peuvent
simplement expérimenter et utiliser la fonction de manière à fournir un feedback rapide à
l’équipe de développement.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 79
2.1.1 Activités de test et de développement
Bonnes pratiques
Dans certains cas, des itérations de renforcement ou de stabilisation se font périodiquement
pour résoudre tous les défauts persistants et autres dettes techniques.
Cependant, la meilleure pratique est qu’aucune fonctionnalité ne soit considérée comme
terminée tant qu’elle n’a pas été intégrée et testée dans le système.
Une autre bonne pratique (appelée « Corriger les bugs d’abord ») est de régler les défauts
restant de l’itération précédente au début de l’itération suivante, en tant que parties du backlog
de cette nouvelle itération.
Même si cette pratique rend plus difficile d’estimer les fonctionnalités restantes qui pourront
être terminées dans le sprint (car les bugs du sprint précédent n’ont pas forcément encore été
analysés).
A la fin de la suite d’itérations, il peut y avoir un ensemble d’activités de déploiement pour
obtenir un logiciel prêt à être livré, bien que dans certains cas, le déploiement soit effectué à
la fin de chaque itération.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 80
2.1.1 Activités de test et de développement
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 81
2.1.1 Activités de test et de développement
Travail en binôme
Dans certaines pratiques Agile (ex: Extreme Programming), le travail en binôme est utilisé.
Deux testeurs
Ou un testeur et un développeur
Le travail en binôme peut être plus difficile quand l’équipe de test est distribuée, mais les
processus et les outils le permettent.
Les testeurs peuvent également agir comme coach tests et qualité dans l’équipe, en
partageant leur connaissance des tests et en prenant en charge l’assurance qualité dans
l’équipe. Cela favorise un sentiment d’appropriation collective de la qualité du produit.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 82
2.1.1 Activités de test et de développement
Automatisation et agilité
L’automatisation des tests à tous niveaux est très répandue dans les équipes Agile.
Alors que les développeurs se focalisent sur la création de tests unitaires automatisés,
Les testeurs devraient s’impliquer fortement sur la création de tests automatisés aux
niveaux intégration, système, et intégration du système.
Cela conduit à une tendance pour les équipes Agile de favoriser les testeurs qui ont un fort
background technique et d’automatisation de tests.
Parallèlement à la forte utilisation de l’automatisation des tests, les tests manuels sur les projets
Agile tendent souvent à être réalisés en utilisant les techniques de tests basés sur l’expérience ou
le défauts :
Estimation d’erreurs,
Tests exploratoires,
Attaques logicielles
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 83
2.1.1 Activités de test et de développement
Automatisation et agilité
On ne peut envisager d’accélérer le cycle de développement (voire de déploiement) s’il faut à
chaque changement repasser par une longue phase de tests de non-régression manuelle.
Les tests automatisés sont le socle nécessaire pour bâtir la « pyramide des tests » équilibrée de
votre application (voir section 3.1.2) :
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 84
2.1.1 Activités de test et de développement
Changements
Un des principes de base Agile est que le changement peut arriver tout au long du projet.
Par conséquent une documentation allégée du produit logiciel est favorisée dans les
projets Agile.
Les changements opérés sur des fonctions existantes peuvent avoir des implications concernant
les tests, particulièrement pour les tests de régression.
L’utilisation de tests automatisés est une façon de gérer la quantité d’effort de test
associé au changement.
Bien entendu, il est important que le taux de changement n’excède pas la capacité de l’équipe
projet à gérer les risques associés à ces changements.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 85
2.1.2 Produits d’activité des projets
Les produits d’activité (livrables) des projets qui intéressent directement les testeurs se
décomposent en trois catégories:
1. Les produits d’activité orientés Métier qui décrivent le besoin, (ex: spécifications
d’exigences) et l’utilisation (ex: Documentation utilisateur)
2. Les produits du développement qui décrivent comment le système est construit (ex:
diagrammes d’entité-relation), qui sont mis en œuvre dans le système (ex: code), ou qui évaluent
des parties de code individuelles (ex: test unitaires automatisés)
3. Les produits du test qui décrivent comment le système est testé (ex: stratégies et plans
de test), qui testent le système (ex: tests manuels et automatisés), ou qui présentent les
résultats des tests (ex: tableaux de bord des tests comme discuté dans la Section 2.2.1)
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 86
2.1.2 Produits d’activité des projets
Dans un projet Agile typique, une pratique commune est d’éviter de produire de grandes
quantités de documentation.
A la place, le focus est mis sur le fait d’obtenir un logiciel opérationnel, avec des tests
automatisés qui démontrent la conformité aux exigences. Cet encouragement à réduire la
documentation s’applique seulement à la documentation qui n’apporte pas de valeur au
client.
Dans les projets Agile réussis, un équilibre est trouvé entre :
augmenter l’efficacité en réduisant la documentation,
et fournir une documentation suffisante pour permettre les activités des Métiers, de test, de
développement, et de maintenance.
L’équipe doit décider pendant la planification de release quels produits d’activité sont
requis et avec quel niveau de documentation.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 87
2.1.2 Produits d’activité des projets
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 88
2.1.2 Produits d’activité des projets
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 89
2.1.2 Produits d’activité des projets
Produits d’activité du test :
catalogues de risques qualité,
plans de test,
tests manuels ou automatisés,
rapports de défauts,
enregistrements (logs) de résultats de test,
métriques de test (établis à partir des rapports de défauts et des logs de résultats de test).
Ces documents sont conçus pour être les plus légers possible (ce qui est souvent également vrai
pour ces documents dans les cycles de vie traditionnels).
Cependant, pour les projets et produits réglementés, critiques pour la sécurité, distribués
ou très complexes, une formalisation plus poussée de ces produits d’activité est nécessaire :
Par exemple, les User Story et les critères d’acceptation sont traduites en des spécifications
d’exigences plus formelles.
Des rapports de traçabilité verticaux (des exigences vers les composants) et horizontaux (des
exigences vers les tests) peuvent être produits pour satisfaire les auditeurs, les règlements, et
autres exigences.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 90
2.1.3 Niveaux de Test
Les niveaux de test sont les activités de test liées logiquement (et donc organisées ensemble),
souvent en fonction de la maturité ou de la complétude de l’objet en test.
Dans les modèles de cycle de vie séquentiels, les niveaux de test sont souvent définis de façon à
ce que le critère de sortie d’un niveau soit une partie du critère d’entrée du niveau
suivant.
Dans certains modèles itératifs, ces règles ne s’appliquent pas parce que les niveaux de test
se chevauchent et que les spécifications d’exigences, les spécifications de conception, et les
activités de développement peuvent se chevaucher avec les niveaux de tests.
Dans certains cycles de vie Agile, les chevauchements existent car des changements dans les
exigences, la conception, peuvent se produire à tout moment d’une itération.
Alors que Scrum, en théorie ne permet pas les changements dans les User Stories après la
planification d’itération, de tels changements surviennent parfois en pratique.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 91
2.1.3 Niveaux de Test
Cycle de test d’une User Story dans une itération
Tests unitaires, typiquement faits par le développeur.
Tests d’acceptation, qui peuvent être découpés en deux activités.
• Les tests de vérification, souvent automatisés, qui peuvent être fait par les développeurs ou les
testeurs, et impliquent que le testeur suive les critères d’acceptation.
• Les tests de validation, habituellement manuels, qui peuvent impliquer des développeurs, des testeurs
et des parties prenantes du Métier dans un travail collaboratif pour déterminer si la fonction est
adaptée à l’utilisation, pour améliorer la visibilité sur l’avancement, et pour recueillir un vrai
feedback des parties prenantes Métier.
De plus, il y a souvent un processus parallèle de tests de régression qui se déroule tout au
long de l’itération. Cela implique de rejouer les tests unitaires automatisés et les tests de
vérification de l’itération en cours et des précédentes, habituellement par un Framework
d’intégration continue.
Il peut également y avoir un niveau de tests système qui commence une fois que la
première User Story est prête pour un tel test. Cela implique d’exécuter des tests
fonctionnels, ou non fonctionnels (pour la performance, fiabilité, utilisabilité…), ou d’autres
types de test pertinents.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 92
2.1.3 Niveaux de Test
Autres formes de tests d’acceptation
Les équipes Agile peuvent utiliser différentes formes de tests d’acceptation :
Les alpha tests (sur environnement interne) et les beta tests (sur l’environnement du client)
peuvent avoir lieu soit à la fin de chaque itération, soit après une série d’itérations.
De même, les tests d’acceptation utilisateur, les tests d’acceptation opérationnels, les
tests d’acceptation légaux, et les tests d’acceptation contractuels peuvent également
être déroulés soit à la fin de chaque itération, soit après une série d’itérations.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 93
2.1.4 Tests et gestion de configuration
Les projets Agile impliquent souvent un usage élevé d’outils d’automatisation pour
développer les tests, et gérer le développement logiciel.
Les développeurs utilisent les outils pour l’analyse statique, les tests unitaires et la
couverture de code.
Les développeurs vérifient continuellement leur code et les tests unitaires dans un système de
gestion de configuration en utilisant des Build automatisés et des Framework de test.
Ces frameworks permettent l’intégration continue de nouveaux logiciels dans le système, avec
l’analyse statique et les tests unitaires joués répétitivement quand le nouveau logiciel est mis
en configuration.
Il est également courant d’ajouter des tests fonctionnels aux niveaux intégration et système dans
le Framework d’intégration continue (moyennant l’utilisation éventuelle de harnais de test ou
autres outils commerciaux ou opensources).
Dans certains cas, à cause de leur durée, les tests fonctionnels sont séparés des tests
unitaires et joués moins fréquemment.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 94
2.1.4 Tests et gestion de configuration
Un des buts des tests automatisés est de confirmer que le Build est installable et fonctionne
Si un test automatisé est en échec, l’équipe devrait corriger le défaut sous-jacent à temps
pour le prochain check-in du code.
Cela requiert un investissement dans le reporting des tests en temps réel pour fournir une
bonne visibilité sur les résultats de test.
Cette approche aide, en détectant rapidement les changements qui cassent le Build ou causent
l’échec de l’installation, à réduire des cycles coûteux et inefficaces de :
« Build installation échec reBuild réinstallation »
Les tests automatisés et les outils de Build aident à gérer le risque de régression associé aux
changements fréquents qui adviennent dans les projets Agile.
Cependant, la sur-confiance dans les seuls tests unitaires automatisés pour gérer ces risques peut
être un problème, car les tests unitaires ont souvent une efficacité de détection de défauts
limitée.
C’est pourquoi les tests automatisés au niveau intégration et système sont également
souhaitables.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 95
2.1.5 Options d’organisation avec des tests indépendants
Comme discuté dans le niveau ISTQB Testeur Fondation, les testeurs indépendants sont
souvent plus efficaces pour trouver des défauts.
Dans certaines équipes Agile,
Les développeurs créent de nombreux tests sous la forme de tests automatisés.
Un ou plusieurs testeurs peuvent être intégrés dans l’équipe, et réaliser des tâches de test.
Cependant, le testeur faisant partie de l’équipe, il y a un risque de perte
d’indépendance et d’évaluation objective.
D’autres équipes Agile restent complètement indépendantes,
Testeurs ou équipes de test séparées, affectés à la demande pendant les derniers jours de
chaque sprint.
Cela peut préserver l’indépendance, et ces testeurs peuvent fournir une évaluation objective,
non biaisée du logiciel.
Cependant, la pression due aux délais, les manques de compréhension dans les
nouvelles fonctionnalités du produit, et les problèmes relationnels entre les parties
prenantes Métier et les développeurs, entrainent souvent des problèmes avec cette
approche.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 96
2.1.5 Options d’organisation avec des tests indépendants
Une troisième option est d’avoir une équipe de test indépendante et séparée où les testeurs
sont affectés aux équipes Agile sur du long terme, en début de projet, ce qui leur permet de :
garder leur indépendance et de gagner une bonne compréhension du produit et en ayant
un relationnel fort avec les autres membres d’équipe.
De plus, l’équipe de test indépendante peut avoir des testeurs spécialisés en dehors de
l’équipe Agile pour travailler sur du long terme et/ou des activités indépendantes des itérations,
comme :
• le développement d’outils de test automatisés,
• la prise en charge des tests non fonctionnels,
• la création et le maintien des environnements et des données de test,
• ou la prise en charge de niveaux de test qui pourraient ne pas être adaptés à un sprint (ex: test
d’intégration système).
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 97
Quiz Time !
Lesquelles des activités de test suivantes sont généralement effectuées pendant les projets agiles,
mais ne sont pas aussi courantes sur les projets traditionnels ?
Jeu de réponses :
A. Les testeurs rédigent des plans de test détaillés afin que tous les membres de l'équipe puissent
comprendre ce qui sera testé à chaque itération.
B. Les testeurs sont fortement impliqués dans la création de cas de tests automatisés qui sont
ensuite utilisés pour vérifier la mise en œuvre des exigences.
C. Les testeurs effectuent des tests exploratoires afin de trouver rapidement les défauts
importants.
D. Les testeurs collaborent avec les développeurs pour mieux comprendre ce qui doit être testé.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 98
Quiz Time !
Laquelle des combinaisons suivantes de ces activités devrait avoir lieu dans un projet agile ?
Jeu de réponses :
A. ii seulement
B. i et ii
C. ii et iii
D. iii seulement
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 99
Quiz Time !
Quels sont les DEUX énoncés suivants qui s'appliquent aux projets agiles ?
Sélectionnez DEUX options.
Jeu de réponses :
A. Les testeurs doivent travailler en étroite collaboration avec les développeurs tout en conservant
une perspective objective.
B. Les Test Managers n'existent pas dans les organisations qui font du développement agile.
C. Il n'y a pas de différence entre ce que les testeurs et les développeurs font sur les projets
agiles.
D. Les développeurs devraient se fier aux testeurs pour créer les tests de régression automatisés.
E. Une sélection d'utilisateurs peut effectuer un test bêta sur le produit après une série
d'itérations.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 100
Quiz Time !
Lequel des énoncés suivants concernant les tests indépendants sur les projets agiles est FAUX ?
Jeu de réponses :
A. Il peut y avoir un risque de perdre l'indépendance des tests pour les organisations qui
introduisent l'agilité.
B. Les testeurs indépendants trouveront plus de défauts que les développeurs, quel que soit le
niveau de test.
C. Des tests indépendants peuvent être introduits à la fin d'un sprint.
D. L'équipe de test indépendante peut faire partie d'une autre équipe.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 101
2 Principes, Pratiques, et Processus
fondamentaux Agile
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 103
2.2.1 Communiquer les statuts du test, l’avancement, et la
qualité Produit
Les testeurs dans les équipes Agile utilisent différentes méthodes pour enregistrer la progression
et le statut des tests :
les reporting automatisés de résultats des tests,
la progression des stories et des tâches associées sur le tableau des tâches Agile,
les Burndown Charts montrant la progression de l’équipe.
Cela peut alors être communiqué au reste de l’équipe en utilisant des médias comme des
tableaux de bord partagés (Wiki, JIRA, Trello…) par email, tout comme verbalement pendant les
Stand-Up Meetings.
L’utilisation d’outils générant automatiquement les reportings sur la base des résultats des tests
et de l’avancement des tâches permet également de collecter des métriques sur le processus
de test, qui peuvent être utilisées dans l’amélioration du processus.
Cette automatisation permet aux testeurs de libérer du temps pour se focaliser sur la
conception et l’exécution de cas de test supplémentaires.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 104
2.2.1 Communiquer les statuts du test, l’avancement, et la
qualité Produit
Un Burndown Chart
présente la quantité de
travail restant à faire par
rapport au temps alloué à
la release ou à l’itération
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 105
2.2.1 Communiquer les statuts du test, l’avancement, et la
qualité Produit
Un diagramme de vélocité présente les quantités de travail planifiées/réalisées au fil des
itérations.
Exemples
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 108
2.2.1 Communiquer les statuts du test,
l’avancement, et la qualité Produit
Métriques
Pour améliorer la qualité du produit complet, de nombreuses équipes Agile
font des enquêtes de satisfaction des clients pour obtenir un feedback concernant le fait que
le produit atteint les attentes.
Les équipes peuvent, pour améliorer la qualité du produit, utiliser d’autres métriques similaires à
celles utilisées dans les méthodologies de développement traditionnels, comme :
Comme dans tous les cycles de vie, les métriques capturées et reportées devraient être
pertinentes et aider à la prise de décision et ne devraient pas être utilisées pour récompenser,
punir, ou isoler des membres de l’équipe.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 109
2.2.2 Gérer les risques de régression en faisant évoluer les cas de
test manuels et automatisés
Dans un projet Agile, le produit grossit à chaque itération et accroît le périmètre des tests.
En plus de tester les changements apportés au code dans l’itération en cours, les testeurs
doivent également vérifier qu'aucune régression n'a été introduite sur les fonctionnalités qui
ont été développées et testées dans les itérations précédentes.
En plus des changements liés à l’aspect incrémental d’Agile, d’autres modifications peuvent
régulièrement survenir pour répondre aux besoins de l'entreprise (répondre au changement étant
un principe Agile clé).
Le risque d'introduire des régressions dans le développement Agile est donc
particulièrement élevé.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 110
2.2.2 Gérer les risques de régression en faisant évoluer les cas de
test manuels et automatisés
Bonnes pratiques
Pour maintenir la vélocité sans augmenter fortement la dette technique, il est critique :
que l’équipe s’investisse dans l’automatisation des tests à tous les niveaux de test aussi
tôt que possible.
que tous les tests capitalisés comme les tests automatisés, les cas de test manuels, les
données de test, et autres artefacts de test soient mis à jour à chaque itération.
Il est donc hautement recommandé que tous les test capitalisés soient maintenus dans un outil
de gestion de configuration de façon à :
permettre le contrôle des versions, avec un accès aisé à tous les membres de l’équipe,
de manière à faciliter la mise en œuvre des modifications requises par les changements de
fonctionnalités en conservant l’historique des tests capitalisés.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 111
2.2.2 Gérer les risques de régression en faisant évoluer les cas de
test manuels et automatisés
Bonnes pratiques
Les tests écrits dans les itérations précédentes pour vérifier des caractéristiques spécifiques
peuvent avoir peu de valeur dans les itérations ultérieures en raison :
de changements de caractéristiques
ou de nouvelles caractéristiques qui modifient le comportement des caractéristiques
antérieures.
Pour cette raison et aussi parce que la répétition complète de tous les tests est rarement possible,
en particulier dans les projets Agile à cycles courts, il est nécessaire que les testeurs consacrent
du temps à chaque itération pour :
examiner les cas de test manuels et automatisés des itérations précédentes et actuelles, pour
retirer ceux qui ne sont plus pertinents,
sélectionner les cas de test qui pourraient être des candidats dans la suite de tests de
régression,
considérer le cas échéant leur aptitude à être automatisés.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 112
2.2.2 Gérer les risques de régression en faisant évoluer les cas de
test manuels et automatisés
Bonnes pratiques
Il est critique que les testeurs aient la possibilité d’identifier rapidement et de mettre à jour les
cas de test des itérations précédentes et/ou des releases qui sont affectées par les changements
faits dans l’itération en cours.
Définir comment l’équipe conçoit, écrit, et stocke les cas de test devrait être fait pendant la
planification de release.
Les bonnes pratiques de conception de test et d’implémentation ont besoin d’être adoptées tôt
et toujours appliquées, en particulier dans ce contexte où les délais sont plus courts pour
tester et les changements courants.
Des tests automatisés bien écrits fournissent un document vivant du fonctionnement du
système :
En vérifiant les tests automatisés et leurs résultats de test dans le système de gestion de
configuration, aligné avec la gestion de version des produits construits,
les équipes Agile peuvent faire la revue des fonctionnalités testées et les résultats de
test pour tout Build à n’importe quel moment dans le temps.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 113
2.2.2 Gérer les risques de régression en faisant évoluer les cas de
test manuels et automatisés
Tests unitaires automatisés
Les tests unitaires automatisés doivent être exécutés avant chaque check-in du code
source dans la branche principale du système de gestion de configuration pour assurer que les
changements de code ne cassent pas le Build du logiciel construit, avec un impact sur la
progression de l’ensemble de l’équipe intégrée.
Les résultats des tests unitaires automatisés fournissent un feedback immédiat sur la
qualité du code et du Build, mais pas sur la qualité du produit.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 114
2.2.2 Gérer les risques de régression en faisant évoluer les cas de
test manuels et automatisés
Tests d’acceptation automatisés
Les tests d’acceptation automatisés sont exécutés régulièrement comme une partie de
l’intégration continue du système complet construit.
Ces tests sont exécutés sur un système complet construit quotidiennement, mais ne sont
généralement pas exécutés à chaque mise sous contrôle (check-in) du code car ils prennent
plus longtemps à exécuter que les tests unitaires automatisés et pourraient ralentir le check-in.
Les résultats des tests d’acceptation automatisés fournissent du feedback sur la qualité
du produit concernant la régression depuis le dernier Build, mais ils ne fournissent pas
de statut sur la qualité complète du produit.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 115
2.2.2 Gérer les risques de régression en faisant évoluer les cas de
test manuels et automatisés
Tests de vérification de Build
Les tests automatisés peuvent être exécutés continuellement sur le système.
Un sous ensemble de tests automatisés pour couvrir les fonctionnalités et les points d’intégration
critiques du système devrait être créé dès qu’un nouveau Build est déployé dans
l’environnement de test.
Ces tests sont communément connus comme des tests de vérification du Build.
Les résultats des tests de vérification de Build fourniront un feedback instantané sur le logiciel
après déploiement, de façon à ce que les équipes ne perdent pas de temps à tester un Build
instable.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 116
2.2.2 Gérer les risques de régression en faisant évoluer les cas de
test manuels et automatisés
Les tests automatisés contenus dans l'ensemble de tests de régression sont généralement
exécutés :
comme une partie du build principal quotidien dans l'environnement d'intégration continue,
et à nouveau quand un nouveau build est déployé dans l'environnement de test.
Dès qu'un test de régression automatisé échoue, l'équipe s'arrête et examine les raisons de
l'échec du test.
Le test peut avoir échoué en raison de changements fonctionnels légitimes dans l'itération en
cours, auquel cas le test et/ou la user story devront peut-être être mis à jour pour refléter les
nouveaux critères d'acceptation.
Par ailleurs, il se peut que le test doive être retiré si un autre test a été construit pour couvrir
les changements.
Cependant, si le test échoue en raison d'un défaut, il est conseillé à l'équipe de corriger le
défaut avant de continuer l'ajout de nouvelles fonctionnalités.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 117
2.2.2 Gérer les risques de régression en faisant évoluer les cas de
test manuels et automatisés
En plus de l’automatisation des tests, les tâches de test suivantes peuvent également être
automatisées :
Génération de données de test
Chargement de données de test dans les systèmes
Déploiement de Builds dans l’environnement de test
Restauration d’un environnement de test (ex : la base de données ou les fichiers de données
des sites web) dans un état de référence (baseline)
Comparaison de données de sortie
L'automatisation de ces tâches réduit la charge de travail et permet à l'équipe de passer du temps
à développer et tester de nouvelles fonctionnalités.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 118
Quiz Time !
Dans un projet agile, lequel des éléments suivants dénoterait le mieux la qualité du produit à la
fin de l'itération 6 d'une nouvelle version de système composée de 8 itérations ?
Jeu de réponses :
A. Aucun défaut de gravité 1 ou 2 n'a été détecté lors des tests système de l'itération 6, ce qui a
permis aux équipes de passer en itération 7.
B. Les résultats d'un test bêta effectué par le client sur la version 6 du logiciel indiquent que le
système fonctionne correctement et qu'il a amélioré sa productivité.
C. L'équipe agile a suivi avec succès les estimations, avec une variance limitée apparaissant sur
les tableaux de bord pour toutes les itérations à ce jour.
D. Toutes les user stories dans le périmètre de chaque itération, jusqu'à l'itération actuelle, ont
été marquées comme "Done", mais avec une certaine dette technique encourue.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 119
Quiz Time !
Lequel des éléments suivants est le mieux à même de montrer la progression de l'équipe par
rapport aux estimations ?
Jeu de réponses :
A. Des burndown charts
B. Des journaux d'automatisation
C. Le tableau de tâches agile montrant la progression des user stories et des tâches
D. Des outils de suivi des défauts
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 120
Quiz Time !
Au cours de la planification de l'itération 5, le métier indique qu'il faut apporter des modifications
au système livré dans l'itération 3. Parmi les activités suivantes, laquelle faudrait-il faire en
premier lieu pour minimiser le risque de régression lorsque cette fonctionnalité sera modifiée ?
Jeu de réponses :
A. Examiner et mettre à jour tous les tests manuels et automatisés touchés par ce changement
afin de répondre aux nouveaux critères d'acceptation.
B. Rédiger de nouveaux tests manuels et automatisés pour cette fonctionnalité et les ajouter à la
suite de tests de régression.
C. Automatiser tous les cas de test de l'itération précédente et les ajouter à la suite de tests de
régression automatisée.
D. Augmenter le degré d'automatisation des tests autour du système pour inclure des conditions
de test plus détaillées.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 121
Quiz Time !
Quelles sont les DEUX raisons pour lesquelles l'automatisation est essentielle dans les projets
agiles ?
i. Pour que les équipes maintiennent ou augmentent leur vélocité.
ii. Pour éviter que l'équipe de test ne s'ennuie avec des tâches manuelles et répétitives.
iii. Pour retester tous les cas de test des itérations précédentes
iv. Éliminer la régression dans le produit due à un taux de modification élevé du code.
v. Pour s'assurer que les changements de code ne cassent pas le build du logiciel
Jeu de réponses :
A. i et iv
B. i et v
C. iii et iv
D. ii et v
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 122
2 Principes, Pratiques, et Processus
fondamentaux Agile
Les testeurs Agile devraient avoir toutes les compétences mentionnées dans le Syllabus niveau
Fondation, pour rappel :
compétences relationnelles pour être capable de communiquer efficacement sur les défauts
et les défaillances
connaissance des principales techniques de test boîte noire, boîte blanche et basées sur
l’expérience
compétences métier pour la conception et l’exécution de tests fonctionnels
compétences techniques pour la conception et l’exécution de tests boîte blanche
ainsi que d’éventuelles compétences spécifiques selon les types de test non-
fonctionnels requis (performance, utilisabilité, sécurité…)
En plus de ces compétences, un testeur dans une équipe Agile devrait être compétent en
automatisation des tests, développement piloté par les tests (TDD), développement piloté par
les tests d’acceptation (ATDD).
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 124
2.3.1 Compétences d’un testeur Agile
Compétences relationnelles
Être positif et orienté solution avec les membres de l’équipe et les parties prenantes
Afficher un esprit critique, être orienté qualité, être sceptiques au sujet du produit
Acquérir activement de l’information des parties prenantes (plutôt que de se fier entièrement
aux spécifications écrites)
Evaluer précisément et reporter les résultats, l’avancement des tests, et la qualité produit
Travailler efficacement pour définir des User Stories testables, spécialement les critères
d’acceptation, avec les représentants des clients et les parties prenantes
Collaborer avec l’équipe, travailler en binôme avec les programmeurs et autres membres de
l’équipe
Répondre au changement rapidement (modifier, ajouter ou améliorer les cas de test)
Planifier et organiser son propre travail (équipe autoorganisée)
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 125
2.3.2 Le Rôle d’un testeur dans une équipe Agile
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 126
2.3.2 Compétences d’un testeur Agile
Organisations de test
Dans une équipe Agile, chaque membre de l’équipe est responsable de la qualité produit et
joue un rôle en réalisant des tâches liées aux tests.
Les organisations Agile peuvent rencontrer des risques liés aux organisations de test:
Les testeurs travaillant très près des développeurs perdent leur mentalité propre de testeur
Les testeurs deviennent tolérants ou silencieux au sujet du faible niveau des pratiques de
l’équipe en termes de qualité, d’efficacité ou d’efficience
Les testeurs ne peuvent pas garder le rythme avec des changements qui arrivent dans des
itérations contraintes en délai
Pour mitiger ces risques, les organisations peuvent considérer différentes solutions pour préserver
l’indépendance discutée dans la Section 2.1.5.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 127
Quiz Time !
Dans les projets agiles, les testeurs ont plus besoin de comprendre et de développer des scripts
d'automatisation des tests que dans les projets traditionnels. De ce qui suit, quelles sont les DEUX raisons
pour lesquelles il s'agit d'une compétence nécessaire sur les projets agiles ?
i. Les besoins changent tous les jours et doivent faire l'objet d'un test de régression. Ce changement rapide
nécessite des tests automatisés parce que les tests manuels sont trop lents.
ii. Les tests doivent permettre d'obtenir le plus tôt possible un feedback sur la qualité du produit. Ainsi, tous
les tests d'acceptation devraient être exécutés à chaque itération, idéalement lorsque des modifications sont
apportées. En pratique, cela ne peut être réalisé que par des tests automatisés.
iii. Les pratiques Test-First et d'intégration continue exigent que la suite de tests de régression soit exécutée
chaque fois que le code modifié est mis en configuration. En pratique, cela ne peut être réalisé que par des
tests automatisés.
iv. Les itérations ou sprints sont de longueur fixe. L'équipe doit garantir que tous les tests peuvent être
entièrement exécutés le dernier jour de chaque itération/sprint. En pratique, cela ne peut être réalisé que par
des tests automatisés.
v. Les projets agiles reposent sur des tests unitaires plutôt que sur des tests de systèmes. Comme les tests
unitaires ne peuvent pas être exécutés manuellement, tous les tests doivent être automatisés.
Jeu de réponses :
A. i & iii B. ii & v C. iv & v D. ii et iii
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 128
Quiz Time !
Quelles tâches sont généralement attendues d'un testeur sur un projet agile ?
i. décider de l'acceptation des utilisateurs
ii. concevoir, créer et exécuter les tests appropriés
iii. planifier les rapports de défauts pour analyse
iv. automatiser et maintenir les tests
v. améliorer la logique du programme par programmation par paires
Jeu de réponses :
A. i & iii
B. ii & iii
C. ii & iv
D. ii & v
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 129
Quiz Time !
Laquelle des tâches suivantes n'est PAS une tâche typique effectuée par le testeur au sein d'une
équipe agile ?
Jeu de réponses :
A. Automatiser les tests et les maintenir.
B. Mentorat et coaching des autres membres de l'équipe
C. Produire et mettre à jour les burndown charts.
D. Participer à des activités d'analyse de code
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 130
2 Principes, Pratiques, et Processus
fondamentaux Agile
Termes à retenir
Burndown chart : Un graphique partagé qui représente l'effort réalisé par rapport au
temps dans une itération. Il montre l'état et la tendance de la complétion des tâches de
l'itération. L'axe des X représente généralement les jours du sprint, tandis que l'axe des Y
représente l'effort restant (habituellement soit en heures d'ingénierie optimales, soit en
points).
Élément de configuration : un ensemble de matériels, logiciels (ou les deux), qui fait
partie de la gestion de configuration et est traité comme une entité unitaire dans le
processus de gestion de configuration.
Synonyme : article de configuration
Gestion de configuration : une discipline appliquant une direction et surveillance
technique et administrative pour identifier et documenter les caractéristiques
fonctionnelles et physiques d’un élément de configuration, contrôler les modifications de
ces caractéristiques, enregistrer et informer des modifications et états d’implémentation,
et vérifier la conformité avec des exigences spécifiées.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 132
Termes à retenir
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 133
Quiz Time !
Le terme "burndown" fait référence auquel des éléments suivants ?
Jeu de réponses :
A. Un tableau indiquant les membres de l'équipe qui travaillent le plus et qui sont susceptibles
d'être stressés.
B. Un tableau montrant l'état d'avancement de chaque user story et la date à laquelle elle sera
probablement terminée
C. Un tableau montrant la quantité de travail restant à faire, par rapport au temps alloué pour
l'itération
D. Un graphique montrant les défauts qui ont été corrigés, et quand les défauts restants sont
susceptibles d'être corrigés.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 134
3. Méthodes, Techniques, et outils pour
les tests Agile
Trois techniques complémentaires utilisées dans les équipes Agile pour prendre en charge les
tests des différents niveaux de test.
Chacune de ces techniques décline un des principes fondamentaux du test :
le bénéfice des tests et des activités de QA au plus tôt dans le cycle de développement
i.e les tests sont définis avant que le code ne soit écrit.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 136
3.1.1 Développement piloté par les tests, Développement piloté par les
tests d’Acceptation et Développement piloté par le Comportement
Développement piloté par les tests (Test Driven Development)
Le développement piloté par les tests (TDD) est utilisé pour développer
le code en étant guidé par des cas de test automatisés.
Processus :
1. Ecrire un cas de test correspondant à une condition de test à vérifier
sur la petite partie de code que l’on veut développer
2. Exécuter le test, qui devrait être en échec, puisque le code n’existe
pas
3. Ecrire le code suffisant pour que le test passe
4. De façon itérative, recommencer les étapes 1 à 3, en vérifiant à
chaque itération que les tests précédents passent toujours
5. Remanier (voir slide suivant) le code après que tous les tests soient
passés, réexécuter les tests pour assurer qu’ils continuent de passer
après le remaniement du code
6. Répéter ce processus pour la petite partie de code suivante, en
exécutant les tests précédents tout autant que les tests ajoutés pour
cette partie
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 137
3.1.1 Développement piloté par les tests, Développement piloté par les
tests d’Acceptation et Développement piloté par le Comportement
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 138
3.1.1 Développement piloté par les tests, Développement piloté par les
tests d’Acceptation et Développement piloté par le Comportement
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 139
3.1.1 Développement piloté par les tests, Développement piloté par les
tests d’Acceptation et Développement piloté par le Comportement
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 140
3.1.1 Développement piloté par les tests, Développement piloté par les
tests d’Acceptation et Développement piloté par le Comportement
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 142
3.1.3 Quadrants de Test, Niveaux de Test et Types de Test
Un travail d’équipe
Agile met en avant l’approche de l’équipe intégrée constituée de développeurs, testeurs, et des
représentants Métier qui travaillent ensemble.
Meilleures pratiques organisationnelles et comportementales des équipes Scrum:
Transversalité : chacun apporte ses Transparents : l’avancement est visible sur le
compétences tableau des tâches
Auto-organisation : avec au moins un testeur Crédibles : sur l’implémentation et l’exécution
Co-location de la stratégie de tests, en fournissant des
informations pertinentes aux parties
Collaboration : au sein de l’équipe et avec les
prenantes
parties prenantes
Ouverts au feedback notamment via les
Habilités : les décisions techniques
rétrospectives
concernant la conception et les tests sont
prises par l’équipe Résistants : capable de répondre aux
changements
Engagés : le testeur s’engage à tester le
produit dans le (strict) respect des attentes et
besoins du client et des utilisateurs
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 144
3.1.4 Le Rôle d’un Testeur dans une équipe Scrum
Le sprint Zéro
Le Sprint zéro est la première itération du projet dans laquelle de nombreuses activités de
préparation ont lieu (voir Section 1.2.5). Le testeur collabore avec l’équipe sur les activités
suivantes durant cette itération :
Identifier le périmètre du projet (ex: le backlog de produit)
Créer une architecture initiale du système et des prototypes de haut niveau
Planifier, acquérir, et installer les outils nécessaires (ex: pour la gestion des tests, la gestion des
défauts, l’automatisation des tests, et l’intégration continue)
Créer une stratégie de test initiale pour tous les niveaux de test concernant le périmètre des
tests (entre autres sujets): les risques techniques, les types de test (voir Section 3.1.3), et les
objectifs de couverture
Faire une analyse initiale de risques qualité (voir Section 3.2.1)
Définir les métriques de test (avancement, qualité)
Spécifier la définition de “terminé” (DoD) dont les critères de sortie des tests
Créer le Task Board ou tableau des tâches (voir Section 2.2.1)
Le sprint zéro définit ce que les tests doivent accomplir et comment, tout au long des
sprints.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 145
3.1.4 Le Rôle d’un Testeur dans une équipe Scrum
Intégration
Dans les projets Agile, l’objectif est de délivrer au client de la valeur sur une base continue (de
préférence à chaque sprint).
Pour le permettre, la stratégie d’intégration devrait considérer à la fois la conception et le
test et identifier toutes les dépendances entre fonctionnalités et fonctions sous-jacentes.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 146
3.1.4 Le Rôle d’un Testeur dans une équipe Scrum
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 147
Quiz Time !
Lequel des énoncés suivants sur le développement piloté par les tests (TDD) est FAUX ?
Jeu de réponses :
A. TDD est une approche "test first" pour développer des tests automatisés réutilisables.
B. Le cycle TDD est utilisé en continu jusqu’à la release du produit logiciel.
C. Le TDD aide à documenter le code en vue de travaux de maintenance futurs.
D. Le résultat de TDD sont des classes de test utilisées par le développeur pour développer des
cas de test.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 148
Quiz Time !
A quoi le terme 'Pyramide de test' fait-il référence et illustre des situations où ?
Jeu de réponses :
A. La charge de travail de l'équipe augmente d'un sprint à l'autre.
B. La taille du backlog, et donc le nombre de tests, diminue
C. Le nombre de tests unitaires automatisés est plus élevé que le nombre de tests automatisés
pour des niveaux de test plus élevés.
D. Le nombre de tests automatisés en place augmente d'un sprint à l'autre
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 149
Quiz Time !
Lequel des éléments suivants démontre une utilisation efficace des quadrants de test ?
Jeu de réponses :
A. Quand il communique des idées de test, le testeur peut se référer au quadrant de test
correspondant, afin que le reste de l'équipe puisse mieux comprendre le but du test.
B. Le testeur peut utiliser les types de tests décrits dans les quadrants de test comme mesure de
couverture, plus il y a de tests couverts dans chaque quadrant, plus la couverture de test est
élevée.
C. L'équipe devrait choisir un certain nombre de tests attendus de chaque quadrant, et le
vérificateur devrait concevoir et exécuter ces tests pour s'assurer que tous les niveaux et types de
tests ont été exécutés.
D. Le testeur peut utiliser les quadrants de test pendant l'analyse des risques ; avec les quadrants
de niveau inférieur représentant un risque moindre pour le client.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 150
Quiz Time !
Compte tenu des user stories suivantes :
"En tant que caissier de banque, je peux facilement naviguer dans le menu et les liens du
système, et trouver l'information que je cherche"
"Pour tous les utilisateurs, le système doit afficher toutes les requêtes en moins de 2 secondes,
90% du temps."
Et les cas de test associés :
TC1 : Connectez-vous en tant que caissier de banque. Saisissez l'ID client. Vérifiez que
l'historique des transactions du client est facile à trouver et que la navigation dans les menus est
intuitive.
TC2 : Connectez-vous en tant que caissier de banque : Saisissez le nom du client. Vérifiez que les
comptes clients sont faciles à trouver et que la navigation dans les menus est intuitive.
TC3 : Simuler le trafic attendu sur le système et valider que le temps d'affichage de l'historique
des transactions client est inférieur à 2 secondes.
De quels DEUX quadrants de test les cas de test ci-dessus feraient partie ?
Jeu de réponses :
A. Q1 & Q2 B. Q2 & Q3 C. Q3 & Q4 D. Q2 & Q4
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 151
Quiz Time !
Au début de la 5ème itération d'un projet, une nouvelle exigence a été introduite pour supporter
un nouveau type de navigateur. Le testeur se rend compte que le framework d'automatisation de
test existant et les scripts ne supporteront pas le nouveau type de navigateur. Quelle est la
meilleure ligne de conduite pour le testeur de cette équipe ?
Jeu de réponses :
A. Le testeur doit informer l'équipe qu'il prévoit de travailler des heures supplémentaires au cours
des deux prochains sprints afin de mettre à jour le framework et les scripts existants pour
supporter le nouveau type de navigateur afin de ne pas perturber le plan existant du sprint.
B. Le testeur informera l'équipe du problème. Une analyse de risque est effectuée et l'équipe
décide que des tests de régression doivent être effectués sur le nouveau type de navigateur en
plus des autres navigateurs supportés. Le testeur mettra à jour le plan de sprint en ajoutant des
tâches pour modifier le framework et les scripts pour supporter le nouveau type de navigateur.
C. Le testeur fait quelques recherches et conclut que le risque est faible que de nouveaux défauts
soient introduits dans le nouveau type de navigateur qui n'ont pas déjà été trouvés dans d'autres
navigateurs supportés. Le testeur continue avec le plan de sprint existant et n'apporte aucun
changement au cadre d'automatisation des tests ou aux scripts.
D. Le testeur arrêtera ce qu'il fait, concevra des tests spécifiques pour tester la compatibilité du
nouveau type de navigateur, et communiquera avec l'équipe que tout autre travail de test pour le
sprint devra être reporté à la prochaine itération.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 152
3. Méthodes, Techniques, et outils pour
les tests Agile
Un objectif typique de test de tous projets, Agiles ou traditionnels, est de réduire le risque de
problème de qualité Produit à un niveau acceptable avant de faire la release.
Les testeurs dans les projets Agile peuvent utiliser les mêmes types de techniques utilisées sur
les projets traditionnels pour identifier les risques qualité (ou risques Produit), évaluer les
niveaux de risque associés, estimer l’effort requis pour réduire suffisamment ces risques, et alors
mitiger ces risques au travers de la conception, l’implémentation et l’exécution des tests.
Cependant, étant donné les itérations courtes et le taux de changement dans les projets
Agile, quelques adaptations à ces techniques sont requises.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 154
3.2.1 Evaluer les risques de qualité sur les Projets Agile
Rappels
Un de nombreux enjeux dans les tests est la sélection, l’affectation, et la priorisation correcte des
conditions de test.
Déterminer la quantité appropriée d’effort à allouer de façon à couvrir chaque condition avec
des tests
Séquencer les tests qui en résultent de façon à optimiser l’efficacité et l’efficience des tests à
faire.
Le risque est la possibilité d’un résultat ou d’un évènement négatif ou non désiré.
Le niveau de risque est déterminé en évaluant la probabilité de l’occurrence du risque et son
impact.
Quand l’effet principal du problème potentiel est sur la qualité du produit, les problèmes
potentiels sont appelés risques qualité ou risques produit.
Quand l’effet principal du problème potentiel concerne le succès du projet, les problèmes
potentiels sont appelés risques projet ou risques de planification.
Exemples de risques qualité ?
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 155
3.2.1 Evaluer les risques de qualité sur les Projets Agile
Dans les projets Agile, l’analyse des risques qualité se fait à deux moments.
Planification de release :
Les représentants Métier qui connaissent les fonctionnalités de la release fournissent une vue
générale des risques de haut niveau, et l’équipe complète, incluant le testeur(s), peut participer
à l’identification et l’évaluation des risques.
Planification d’itération :
L’équipe intégrée identifie et évalue les risques qualité.
Une itération commence avec la planification d’itération, qui aboutit à l’estimation des tâches
sur le tableau de tâches.
Ces tâches peuvent être priorisées en partie en se basant sur le niveau de risque qualité
associé à la tâche.
Les tâches associées avec un risque plus élevé devraient commencer tôt et impliquer le
plus d’effort de test.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 156
3.2.1 Evaluer les risques de qualité sur les Projets Agile
Processus (exemple)
1. Rassembler les membres de l’équipe Agile, incluant le(s) testeur(s)
2. Lister tous les éléments du backlog pour l’itération en cours (ex., sur un tableau de tâches)
3. Identifier les risques qualité associés à chaque élément, en considérant toutes les
caractéristiques qualités pertinentes
4. Evaluer chaque risque identifié, ce qui inclut deux activités: catégoriser le risque
(caractéristique qualité concernée) et déterminer son niveau de risque basé sur l’impact et la
probabilité de défaut
5. Déterminer l’intensité du test proportionnellement au niveau de risque
6. Sélectionner le(s) technique(s) de test appropriée(s) pour mitiger chaque risque, en se basant
sur le risque, le niveau de risque, et les caractéristiques qualité pertinentes.
Le testeur ensuite conçoit, implémente, et exécute des tests pour mitiger les risques.
Cela inclut la totalité des caractéristiques, comportements, caractéristiques qualité, et
attributs qui affectent la satisfaction du client, de l’utilisateur, et des parties prenantes.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 157
3.2.1 Evaluer les risques de qualité sur les Projets Agile
Rappels
Au cours du projet, l’équipe devrait rester à l’écoute de nouvelles informations qui peuvent
changer l’ensemble des risques et/ou le niveau de risque associé aux risques qualité connus.
Un ajustement périodique de l’analyse du risque produit, qui résulte en ajustements pour les
tests, devrait se faire.
Identifier les nouveaux risques
Réévaluer les niveaux de risque existants
Evaluer la productivité des activités de mitigation des risques.
Les risques Qualité peuvent être également mitigés avant que l’exécution des tests ne
commence.
Par exemple, si des problèmes avec les User Story sont trouvés pendant l’identification des
risques, l’équipe projet peut revoir en profondeur les User Story comme actions de mitigation
des risques.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 158
3.2.2 Estimer l’effort de test basé sur le contenu et les risques
Planning Poker
Durant la planification de release, l’équipe Agile estime l’effort requis pour traiter la release.
L’estimation concerne également l’effort de test.
Une technique d’estimation commune utilisée dans les projets Agile est le planning Poker, une
technique basée sur le consensus.
Le Product Owner ou le client lit une User Story aux évaluateurs.
Chaque évaluateur a un jeu de cartes avec des valeurs similaires à la suite de Fibonacci (EX
0, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89…) ou toute autre choix de progression (Ex: XS, S, M, L, XL).
Les valeurs représentent le nombre de points de Story (story points), de jours d’effort, ou
d’autres unités que l’équipe utilise pour estimer.
La suite de Fibonacci est recommandée car les nombres de la suite reflètent l’incertitude qui
augmente proportionnellement avec la taille de la story.
Une estimation haute signifie habituellement que la Story n’est pas bien comprise ou devrait
être divisée en plusieurs Stories plus petites.
Les évaluateurs discutent de la fonctionnalité, et posent des questions au Product Owner tant
qu’il y en a besoin.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 159
3.2.2 Estimer l’effort de test basé sur le contenu et les risques
Jeu de réponses :
A. Comme les estimations des clients et des développeurs correspondent, l'équipe peut être
certaine que cette estimation est bonne et qu'elle devrait passer à la prochaine user story.
B. L'équipe devrait débattre pour comprendre pourquoi les testeurs ont estimé que cette user
story représentait beaucoup plus de travail. Un autre tour de planning poker devrait avoir lieu
après cette discussion.
C. Étant donné que le client est propriétaire du système au bout du compte, les estimations du
client doivent être considérées comme correctes en cas de conflit.
D. Les sessions de planning poker doivent se poursuivre jusqu'à ce que tous les story points
estimés correspondent exactement entre les clients, les développeurs et les testeurs.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 162
3. Méthodes, Techniques, et outils pour
les tests Agile
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 164
3.3.1 Critères d’acceptation, adéquation de la couverture, et
autres informations pour les Tests
Autres bases de test
L’expérience de projets précédents
Les fonctions existantes, fonctionnalités, et caractéristiques qualité du système
Le code, l’architecture et la conception
Les profils utilisateur (contexte, configuration système, et comportement de l’utilisateur)
L’information sur les défauts de projets existants ou passés
Une catégorisation des défauts dans une taxonomie des défauts
Les standards applicables (ex., [DO-178B] pour les logiciels avioniques)
Les risques Qualité (voir Section 3.2.1)
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 165
3.3.1 Critères d’acceptation, adéquation de la couverture, et
autres informations pour les Tests
Critères d’acceptation
Durant chaque itération, les développeurs créent le code qui implémente les fonctions et les
fonctionnalités décrites dans les User Stories, avec les caractéristiques qualité pertinentes, et ce
code est vérifié et validé via les tests d’acceptation.
Pour être testables, les critères d’acceptation doivent adresser les éléments suivants (s’ils sont
pertinents dans le contexte) :
Comportement Fonctionnel: Le comportement observable de l’extérieur selon les actions
utilisateur comme entrées, sous certaines configurations.
Caractéristiques Qualité: Comment le système réalise le comportement spécifié. Les
caractéristiques peuvent également être nommées attributs qualité ou exigences non
fonctionnelles.
Les caractéristiques qualités courantes sont la performance, la fiabilité, l’utilisabilité, etc.
Scénarios (ou cas d’utilisation): Une séquence d’actions entre un acteur externe (souvent
un utilisateur) et le système, de façon à atteindre un but spécifique ou accomplir une tâche
Métier.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 166
3.3.1 Critères d’acceptation, adéquation de la couverture, et
autres informations pour les Tests
Critères d’acceptation (suite des éléments à adresser)
Règles Métier: Activités qui ne peuvent être réalisées avec le système que sous certaines
conditions définies par des procédures et des contraintes externes (ex., procédures utilisées par
une compagnie d’assurance pour traiter les demandes d’assurance).
Interfaces externes: Description des connexions entre le système à développer et le monde
extérieur.
Les interfaces externes peuvent être divisées en différents types (interface utilisateur, interfaces
vers d’autres systèmes, etc.).
Contraintes: Toute contrainte de conception et d’implémentation qui va restreindre les
options pour le développeur.
Les composants avec logiciel embarqué doivent souvent respecter des contraintes physiques
comme la taille, le poids, et les interfaces de connexion.
Définitions de données: Les clients peuvent décrire le format, les types de données, les
valeurs autorisées, et les valeurs par défaut pour une donnée attribut d’une structure complexe
de données Métier (ex., le code postal d’une adresse postale).
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 167
3.3.1 Critères d’acceptation, adéquation de la couverture, et
autres informations pour les Tests
Autres informations
En plus des User Stories et de leurs critères d’acceptation associés, d’autres informations sont
pertinentes pour le testeur :
Comment le système est supposé fonctionner et être utilisé
Les interfaces systèmes qui peuvent être utilisées/accédées pour tester le système
Si l’aide apportée par les outils actuels est suffisante
Si le testeur a suffisamment de connaissances et de compétences pour réaliser les tests
Les testeurs vont souvent découvrir un besoin d’informations supplémentaires (ex: La couverture
de code) au travers des itérations et devraient travailler collaborativement avec le reste de
l’équipe Agile pour obtenir cette information.
La pertinence de ces informations joue un rôle pour savoir si une activité particulière peut être
considérée comme terminée.
Ce concept de définition de “terminé” (DoD) est critique dans les projets Agile, et s’applique de
différentes façons comme cela est discuté dans les sous-sections suivantes.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 168
3.3.1 Critères d’acceptation, adéquation de la couverture, et
autres informations pour les Tests
DoD Niveaux de test
Chaque niveau de test a sa propre définition de “terminé”. Par exemple,
Tests unitaires
• % de couverture des décisions
• % d’Analyse Statique du code effectué et pas de dette technique connue et inacceptable restante
• % de tests unitaires automatisés
Tests d’intégration
• % d’interfaces entre les composants testées
• % de tests d’intégration automatisés
Tests système
• % d’exigences testées, par criticité
• % de risques Qualité couverts, par niveau de risque
• % de tests de bout en bout effectués
• % de tests de régression automatisés
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 169
3.3.1 Critères d’acceptation, adéquation de la couverture, et
autres informations pour les Tests
DoD User Stories
La définition de “Terminé” pour les User Story peut être déterminée par les critères suivants :
Les User Stories sélectionnées pour l’itération ont été revues, comprises par l’équipe, et ont des
critères d’acceptation détaillés et testables
Les tâches nécessaires pour implémenter et tester les User Story sélectionnées ont été
identifiées et estimées par l’équipe
Les tests d’acceptation des User Stories sont passés et OK
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 170
3.3.1 Critères d’acceptation, adéquation de la couverture, et
autres informations pour les Tests
DoD Features (fonctionnalités, caractéristiques)
La définition de “Terminé” des fonctionnalités, qui peuvent être décomposées en de multiples User
Stories ou EPIC peut inclure:
Toutes les User Story constituantes, avec des critères d’acceptation, sont définies et approuvées
par le client
La conception est terminée, sans dette technique inacceptable connue
Le codage est terminé, sans dette technique inacceptable connue ni refactoring non fini
Les tests unitaires ont été réalisés et ont atteint le niveau défini de couverture
Les tests d’Intégration et les tests systèmes pour la feature ont été réalisés en accord avec les
critères de couverture définis
Aucun défaut majeur ne reste à corriger
La documentation fonctionnelle est complète, ce qui peut inclure les notes de release, les
manuels utilisateurs, et les fonctions d’aide en ligne
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 171
3.3.1 Critères d’acceptation, adéquation de la couverture, et
autres informations pour les Tests
DoD Itération
La définition de “Terminé” pour l'itération peut inclure ce qui suit :
Toutes les user stories de l'itération ont passé leurs tests d'acceptation ou ont été replacées
dans le backlog produit
Tout défaut non critique qui ne peut être corrigé dans les limites de l'itération a été rajouté au
backlog produit et priorisé.
Intégration de toutes les fonctionnalités pour l'itération terminée et testée
Documentation écrite, revue et approuvée
A ce stade, le logiciel est potentiellement livrable parce que l'itération a été achevée avec succès,
mais toutes les itérations n'aboutissent pas à une déploiement.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 172
3.3.1 Critères d’acceptation, adéquation de la couverture, et
autres informations pour les Tests
DoD Release
La définition de “Terminé” pour une release, qui peut être divisée en de multiples itérations peut
inclure:
Couverture
• Tous les éléments de base des tests pertinents pour tous les contenus de la release ont été couverts par
des tests avec l’intensité convenue
Qualité
• L’intensité des défauts (Ex: combien de défauts sont trouvés par jour ou par transaction),
• La densité de défauts (Ex: le nombre de défauts trouvés comparé au nombre de User Story, l’effort, et/ou
aux attributs Qualité), et le nombre estimé de défauts potentiellement restant étant dans des
limites acceptables,
• Les conséquences des défauts non corrigés sont compris et acceptables en termes de priorité et de
sévérité,
• Les niveaux de risques résiduels associés avec chaque risque qualité identifié sont compris et acceptables.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 173
3.3.1 Critères d’acceptation, adéquation de la couverture, et
autres informations pour les Tests
DoD Release (suite)
Délai
• Si la date de livraison prédéterminée est atteinte, décider de mettre en production ou pas en fonction des
considérations Métier.
Coûts
• Les coûts estimés du cycle de vie devraient être utilisés pour calculer le retour sur investissement du
système délivré (i.e., les coûts calculés du développement et de la maintenance devraient être
considérablement plus bas que le total du bénéfice espéré avec le produit).
• La part la plus importante des coûts du cycle de vie provient souvent de la maintenance une fois le
produit releasé, du fait du nombre de défauts laissés en production.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 174
3.3.2 Appliquer le Développement piloté par les tests
d’acceptation (ATDD)
Le développement piloté par les tests d’acceptation est une approche « test first ».
Les cas de test sont créés avant d’implémenter la User Story.
Les cas de test sont créés par l’équipe Agile incluant les développeurs, les testeurs, et les
représentants Métier et peuvent être manuels ou automatisés.
Etape 1 : atelier de spécification
Chaque User Story est analysée, discutée et écrite par les développeurs, testeurs, et
représentants Métier.
Toute incomplétude, ambigüité, ou erreur dans la User Story est corrigée durant ce processus.
Etape 2 : création des tests
Cela peut être fait par l’ensemble de l’équipe ou individuellement par le testeur. Dans
tous les cas, une personne indépendante comme un représentant Métier valide les
tests. Les tests sont des exemples qui décrivent les caractéristiques des User Story (les
deux termes sont utilisés)
Ces exemples (à commencer par des exemples basiques et des questions ouvertes) vont aider
l’équipe à implémenter correctement la User Story.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 175
3.3.2 Appliquer le Développement piloté par les tests
d’acceptation (ATDD)
En général, les premiers tests sont les tests des chemins positifs (cas passants) sans
exception ou condition d’erreur, comprenant la séquence d’activités exécutée telle que souhaitée.
Une fois les chemins positifs testés, l’équipe devrait également
écrire des tests des chemins négatifs et
couvrir des attributs non-fonctionnels (ex: performance, utilisabilité).
Afin que chaque partie prenante soit capable de les comprendre, les tests sont exprimés en
langage naturel et décrivent :
les préconditions
les données d’entrées
les résultats associés attendus.
Les exemples doivent couvrir toutes les caractéristiques de la User Story et ne pas rajouter des
éléments à la Story.
Pas d’exemple décrivant un aspect de la User Story non documenté dans la Story elle-
même.
Chaque caractéristique de User Story n’est décrite que par un seul exemple.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 176
3.3.3 Conception des tests boîte noire Fonctionnels et Non-
Fonctionnels
Dans les tests Agile, de nombreux tests sont créés par les testeurs en parallèle des activités de
programmation.
Tout comme les développeurs programment en se basant sur les User Story et les critères
d’acceptation, les testeurs créent les tests sur cette même base. (Certains tests, comme les
tests exploratoires et d’autres tests basés sur l’expérience, sont créés ultérieurement, pendant
l’exécution des tests, comme expliqué dans la Section 3.3.4).
Les testeurs peuvent appliquer les techniques de conception des tests boîte noire
traditionnelles, comme les partitions d’équivalence, l’analyse des valeurs limites, les tables de
décision, et les tests de transition d’état pour créer ces tests.
Les exigences non-fonctionnelles peuvent être documentées comme des User Stories
indépendantes ou à l’intérieur de user stories fonctionnelles.
Pour rappel, les techniques de conception boîte noire peuvent également être utilisées pour créer
des tests pour des caractéristiques non-fonctionnelles.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 177
3.3.4 Les tests exploratoires et les tests Agile
Les tests exploratoires sont importants en Agile, en raison des limites de temps disponibles
pour l’analyse des tests et le niveau limité de détails dans les User Story.
De façon à obtenir les meilleurs résultats, les tests exploratoires devraient être combinés
avec
d’autres techniques basées sur l’expérience faisant partie de la stratégie de test réactive,
ou d’autres stratégies de test comme
• les tests analytiques basés sur les risques,
• les tests analytiques basés sur les exigences,
• les tests basés sur les modèles,
• et les tests de non régression.
Les stratégies de test et les stratégies de test combinées sont discutées dans le syllabus niveau
fondation.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 178
3.3.4 Les tests exploratoires et les tests Agile
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 179
3.3.4 Les tests exploratoires et les tests Agile
Une charte de tests peut inclure les éléments suivant:
Acteur: Utilisateur attendu du système
Sujet: Le thème de la charte incluant quel objectif particulier l’acteur veut réaliser, par exemple
les conditions de test
Setup: Ce qui doit être mis en place pour commencer l’exécution des tests
Priorité: Importance relative de la charte, basée sur la priorité des User Story associées ou du
niveau de risque
Référence: Spécifications (Ex: User Story), risques, ou autres sources d’information
Data: Tous les data nécessaires pour prendre en charge la charte
Activités: Une liste d’idées de ce que l’acteur peut vouloir faire avec le système (Ex: “Log sur
le système comme “super utilisateur”) et ce qu’il serait intéressant de tester (à la fois les tests
positifs et négatifs)
Notes d’oracle: Comment évaluer le produit pour déterminer des résultats corrects (Ex pour
capturer ce qui survient sur l’écran et le comparer à ce qui est écrit dans le manuel utilisateur)
Variations: Actions alternatives et évaluations pour compléter les idées décrites derrière les
activités.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 180
3.3.4 Les tests exploratoires et les tests Agile
Pour gérer les tests exploratoires, une méthode appelée gestion par des sessions de test peut
être utilisée.
Une session est définie comme un période ininterrompue de test qui peut prendre de 60 à 120
minutes.
Les sessions de test incluent les éléments suivants:
Session d’enquête (pour apprendre comment il fonctionne)
Session d’analyse (évaluation de la fonctionnalité ou des caractéristiques)
Profondeur de couverture (cas exotiques, scenarios, interactions)
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 181
3.3.4 Les tests exploratoires et les tests Agile
La qualité des tests dépend de la capacité du testeur à poser les questions pertinentes sur
ce qu’il teste :
Qu’est ce qui est le plus important à découvrir concernant le système?
De quelle façon le système peut-il tomber en échec ?
Qu’est ce qui se passe si.....?
Qu’est ce qui se passera quand.....?
Est-ce que les besoins utilisateur, exigences, et souhaits sont satisfaits ?
Est-ce qu’il est possible d’installer le système (et de le supprimer si nécessaire) dans tous les
scénarios de mise à jour supportés?
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 182
3.3.4 Les tests exploratoires et les tests Agile
Durant l’exécution des tests, le testeur utilise sa créativité, son intuition, ses facultés
cognitives et ses compétences des testeurs pour trouver des défauts possibles dans le
produit.
Les testeurs ont également besoin d’avoir une bonne connaissance et une bonne
compréhension du logiciel en test, du domaine Métier, de comment le logiciel est utilisé, et de
comment déterminer quand le système tombe en échec.
Un ensemble d’heuristiques peuvent être appliquées lors des tests.
Une heuristique peut guider le testeur sur comment réaliser les tests et évaluer les résultats.
Les exemples incluent:
Les limites
CRUD : Créer (Create), Lire (Read), Mettre à jour (Update), Effacer (Delete))
Les variations de configuration
Les interruptions (ex., se déconnecter, éteindre, ou rebooter)
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 183
3.3.4 Les tests exploratoires et les tests Agile
Il est important que le testeur documente le processus autant que possible:
Couverture de Test : Quelles données d’entrée ont été utilisées, combien a été couvert, et
combien reste à tester
Notes d’évaluation : observations, stabilité du système, défauts trouvés, compléments de
tests proposés pour l’étape suivante en fonction des observations et toute autre liste d’idées.
Listes de Risques/Stratégie : Quels risques ont été couverts et quels risques parmi les plus
importants restent à couvrir, est-ce que la stratégie initiale a été suivie, est-ce qu’elle a besoin
de changements
Points en suspens, questions, et anomalies : tout comportement non attendu, toutes
question concernant l’efficacité de l’approche, toute doute au sujet des idées/tentatives de test,
environnements de test, données de test, non compréhension de la fonction, du script de test
ou du système en test
Comportement observé : enregistrer les preuves/traces du comportement réel du système
(vidéo, captures d’écran, fichiers de données de sortie)
Les outils disponibles (ex: outils de gestion des tests, outils de gestion des tâches, le tableau des
tâches), doivent être utilisés de façon à ce qu’il soit facile aux parties prenantes de comprendre le
statut en cours pour tous les tests qui ont été réalisés.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 184
Quiz Time !
Une équipe agile est affectée à un projet de mise à jour d'un dispositif médical existant vers de
nouvelles technologies. Depuis la dernière version du dispositif médical existant, une nouvelle
version de la norme relative aux dispositifs médicaux a été publiée. L'accès des utilisateurs à
l'appareil est en train de changer et sera documenté dans des user stories.
Sur la base de ces informations, et en plus des user stories, lequel des éléments suivants
fournirait le mieux des informations pertinentes à l'appui de vos activités de test ?
Jeu de réponses :
A. i, ii, iii, iv B. ii, iv, v C. i, ii, v D. Toutes ces réponses
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 185
Quiz Time !
Quelle est la MEILLEURE description de l'arrêt des tests (critères de release) dans un projet
agile ?
Jeu de réponses :
A. Tous les cas de test ont été exécutés.
B. La probabilité des défauts restants a été réduite à un niveau acceptable pour le client.
C. La couverture de test obtenue est considérée comme suffisante. La limite de couverture est
justifiée par la complexité de la fonctionnalité incluse, son implémentation, et les risques
encourus
D. L'itération/sprint est terminée
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 186
Quiz Time !
Parmi les énoncés suivants, quels sont les DEUX exemples de critères d'acceptation vérifiables
pour les activités liées aux tests ?
Sélectionnez DEUX options.
Jeu de réponses :
A. Tests basés sur la structure : Des tests Boîte blanche en plus des tests Boîte noire sont utilisés.
B. Tests système : Au moins 80 % des tests de régression fonctionnelle sont automatisés.
C. Tests de sécurité : Une analyse des risques de menace est effectuée sans qu'aucune anomalie
ne soit décelée.
D. Tests de performance : L'application répond dans un délai raisonnable avec 5000 utilisateurs.
E. Tests de compatibilité : L'application fonctionne sur tous les principaux navigateurs.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 187
Quiz Time !
Compte tenu de la user story suivante : "En tant que caissier de banque, j'aimerais pouvoir
visualiser à l'écran toutes les transactions bancaires de mon client, afin de pouvoir répondre à ses
questions.
Lequel des cas suivants peut être considéré comme un cas de test d'acceptation pertinent ?
i. Connectez-vous en tant que caissier de banque, obtenez le solde du compte du client pour tous
les comptes ouverts.
ii. Connectez-vous en tant que caissier de banque, entrez un ID de compte client, obtenez
l'historique de ses transactions à l'écran.
iii. Connectez-vous en tant que caissier de banque, demandez l'ID de compte du client en utilisant
des abréviations de nom, et obtenez l'historique de ses transactions à l'écran.
iv. Connectez-vous en tant que caissier de banque, saisissez un IBAN client (numéro de compte
bancaire international), obtenez l'historique de ses transactions à l'écran.
v. Connectez-vous en tant que banquier, entrez un numéro de compte client, obtenez l'historique
des transactions en moins de 3 secondes à l'écran.
Jeu de réponses :
A. i, ii, iv B. i, iii, iv C. ii, iv, v D. ii, iii, iv
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 188
Quiz Time !
Compte tenu de la user story suivante : "Une application en ligne facture les clients pour
l'expédition des articles achetés, en fonction des critères suivants :
- Frais d'expédition standard pour moins de 6 articles
- Les frais d'expédition sont de 5 $ pour 6 à 10 articles.
- La livraison est gratuite pour plus de 10 articles.
Laquelle des techniques suivantes est la meilleure technique de conception de test de boîte noire
pour la user story ?
Jeu de réponses :
A. Tests de transition d'état : Testez les états suivants : navigation, connexion, sélection, achat,
confirmation et sortie.
B. Tables de décision : Tester les conditions suivantes - Utilisateur connecté ; Au moins 1 article
dans le panier ; Achat confirmé ; Financement approuvé ; avec l'action résultante de - Expédier
l'article.
C. Analyse des valeurs limites : Tester les entrées suivantes - 0,5,6,10,11,max.
D. Tests de cas d'utilisation : Acteur=client ; Prérequis = client se connecte, sélectionne et achète
des articles ; Postconditions = les articles sont envoyés.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 189
Quiz Time !
Parmi les énoncés suivants, lesquels sont VRAIS en ce qui concerne les tests exploratoires ?
1. Les tests exploratoires englobent simultanément l'apprentissage, la conception et l'exécution
des tests.
2. Les tests exploratoires sont effectués par les développeurs.
3. Les cas de tests exploratoires devraient être automatisés pour un maximum de bénéfice.
4. Les testeurs exploratoires doivent avoir une connaissance préalable du système testé.
Jeu de réponses :
A. 1 et 4
B. 1 et 2
C. 2 et 4
D. 1 et 3
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 190
Quiz Time !
Lequel des énoncés suivants est FAUX en ce qui concerne les tests exploratoires ?
Jeu de réponses :
A. Les tests exploratoires englobent l'apprentissage simultané, la conception et l'exécution des
tests.
B. Les tests exploratoires éliminent le besoin pour les testeurs de préparer des idées de tests
avant l'exécution des tests.
C. Les meilleurs résultats sont obtenus lorsque les tests exploratoires sont combinés à d'autres
stratégies de tests.
D. Les testeurs exploratoires doivent avoir une bonne compréhension du système testé.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 191
3. Méthodes, Techniques, et outils pour
les tests Agile
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 193
3.4.2 Outils de communication et de partage d’information
Les Wikis permettent à l’équipe de construire et de partager une base de connaissance en
ligne :
Diagrammes de fonctionnalités Produit, discussions sur les fonctionnalités, diagrammes de
prototypes, photos de discussions sur tableau blanc…
Outils et/ou techniques pour développer et tester identifiées comme utiles par les autres
membres de l’équipe
Métriques, graphiques, et tableaux de bord des statuts du produit, particulièrement utiles quand
le wiki est intégré avec d’autres outils comme le serveur de Build et le système de gestion de
tâches
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 194
3.4.2 Outils de communication et de partage d’information
Les messageries instantanées, téléconférences audio, et outils de chat vidéo apportent
les bénéfices suivants :
Permettre une communication directe en temps réel entre les membres de l’équipe, en
particulier les équipes distribuées
Impliquer les équipes distribuées dans les stand up meetings
Réduire les notes de téléphone en utilisant la technologie VOIP, supprimer les contraintes
financières qui pourraient réduire la communication des membres de l’équipe dans des
situations distribuées
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 195
3.4.2 Outils de communication et de partage d’information
Les outils de partages d’écran et de capture fournissent les bénéfices suivants :
Dans les équipes distribuées, des démonstrations du produit, des revues de code, et même le
travail en binôme peuvent avoir lieu.
Capturer les démonstrations du produit à la fin de chaque itération, qui peuvent être placées sur
les wikis des équipes
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 196
3.4.3&4 Outils de build, de distribution et de gestion de
configuration
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 197
3.4.5 Outils de conception, d’implémentation, et d’exécution des
tests
Outils de conception de test : mind-maps
Outils de gestion des cas de test : en Agile peut être une partie de l’outil de gestion du cycle
de vie de l’application de l’équipe intégrée ou l’outil de gestion des tâches (Jira/Zephyr ou XRay)
Outils de préparation et génération des données de test : outils qui génèrent les données
qui peuplent une base de données applicative.
• Ces outils peuvent également aider à redéfinir la structure de la base de données en cas de changement
ou de refactoring. Cela permet une mise à jour rapide des données de test quand des changements
surviennent.
• Certains outils de préparation des données de test utilisent des sources de données de production comme
matière première, et utilisent des scripts pour supprimer ou anonymiser des données sensibles.
• D’autres outils de préparation des données de test peuvent aider en validant des données d’entrées et de
résultats de grandes tailles.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 198
3.4.5 Outils de conception, d’implémentation, et d’exécution des
tests
Outils de chargement de données de test : L’entrée manuelle de données est souvent
chronophage et facteur d’erreurs, de nombreux outils de génération de données incluent un
composant de chargement de données intégré.
Outils d’exécution de tests automatisés: Ce sont les outils d’exécution de tests qui sont les
plus en phase avec les tests Agile. Des outils spécifiques sont disponibles sous forme
commerciale ou open source qui supportent les approches « test en premier » comme le TDD
ou l’ATDD
Outils de tests exploratoires : Les outils qui capturent et enregistrent les activités réalisées
sur une application pendant les sessions de tests exploratoires enregistrent les actions
effectuées et :
• facilitent le cas échéant la reproduction de la défaillance par le développeur
• accélère l’automatisation si le test est finalement inclus dans les suites de tests de régression automatisés
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 199
3.4.6 Outils de Cloud Computing et de virtualisation
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 200
Quiz Time !
Lequel des éléments suivants est l'un des objectifs d'un outil de gestion du cycle de vie des
applications (ALM) sur un projet agile ?
Jeu de réponses :
A. Un outil ALM permet aux équipes de constituer une base de connaissances sur les outils et les
techniques pour activités de développement et de test
B. Un outil ALM fournit une réponse rapide sur la qualité de construction et des détails sur les
changements de code.
C. Un outil ALM fournit une visibilité sur l'état actuel de l'application, en particulier avec des
équipes distribuées
D. Un outil ALM génère et charge d'importants volumes et combinaisons de données à utiliser
pour les tests.
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 201
3. Méthodes, Techniques, et outils pour
les tests Agile
Termes à retenir
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 203
Termes à retenir
Tests dirigés par mots-clé : une technique de script utilisant des fichiers de données
qui contiennent non seulement des données de test et des résultats attendus, mais aussi
des mots clé liés à l’application à tester. Les mots clé sont interprétés par des scripts de
support spécifiques, appelés par le script de contrôle du test.
Synonyme : Tests dirigés par mots d’actions
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 204
And now…
Sogeti Test Academy Testeur Agile certifié ISTQB foundation V1.03 © 2019 Sogeti. All rights reserved. 205
About Sogeti
Sogeti is a leading provider of technology and engineering services. Sogeti delivers
solutions that enable digital transformation and offers cutting-edge expertise in Cloud,
Cybersecurity, Digital Manufacturing, Digital Assurance & Testing, and emerging
technologies. Sogeti combines agility and speed of implementation with strong technology
supplier partnerships, world class methodologies and its global delivery model,
Rightshore®. Sogeti brings together more than 25,000 professionals in 15 countries,
based in over 100 locations in Europe, USA and India. Sogeti is a wholly-owned subsidiary
of Capgemini SE, listed on the Paris Stock Exchange.