1. Le testeur à la découverte du monde agile
Marc Hage Chahine
Key Member centre d’expertise d’Altran
Créateur et animateur du blog « La taverne du testeur »
17/10/19 3ème édition Soirée du Test Logiciel Sophia #STLS2019 1
2. Merci aux Sponsors !
17/10/19 3ème édition Soirée du Test Logiciel Sophia #STLS2019 2
3. Le testeur à la découverte du monde agile
• 1 Le monde merveilleux
de l’agilité
• 2 Tous pour 1 et 1 pour
tous
• 3 La qualité c’est pour
tout le monde
• 4 Le mur de la fréquence
d’exécution
• 5 Le mur
d’incompréhension
• 6 Le mur du temps
• 7 Le mur de la prod
• 8 Le mur des données
• 9 Questions
3
6. C’est officiel, maintenant
tous nos projets seront
agiles!
• On délivre plus rapidement
• On propose plus de valeur
• On est plus proche des
clients
• Il y a une vraie cohésion
entre tous les membres du
projet
• Bref, tout est mieux pour
moins cher!
Concrètement ça
change quoi ?
Testeur
Analyste
Métier
8. C’est bon j’ai conçu
mes tests, j’attends
votre livraison
Et de mon côté, un peu
d’aide sur la US_XXX (dev
simple mais long) serait la
bienvenue!
Ça tombe bien j’ai
besoin d’aide pour la
rédaction des
spécifications!
Dev
9. Je peux également t’aider, en
plus ça me permettra de
repérer directement les
anomalies
J’ai trop de tests à
exécuter et tout doit
être fini pour demain
J’arrive, quelle US
souhaites-tu que
je teste?
11. Il y a des bugs sur le produit,
ce n’est pas normal! Que font
donc les testeurs!
Malheureusement
les tests exhaustifs
sont impossible
Je veux bien
l’accepter, par
contre, la qualité
n’est pas du tout
au rendez-vous.
Notre produit est
très mal noté et si
on ne réagit pas
très vite cela sera
catastrophique
Patron
12. Le patron n’est pas
content et se plaint de
la qualité… et des
testeurs
Attend, je vais
lui parler
On l’a vu lors des
rétrospectives et
modifié nos Definition
of Done. On a
maintenant des revues
pour les exigences
De même, il faut maintenant une
revue de code pour accepter un
commit et on travaille en TDD. La
qualité va s’améliorer!
Scrum
Master
13. La qualité c’est la
responsabilité de
toute l’équipe, pas
que du testeur!
Le testeur est pourtant là pour
assurer la qualité, ne dit-on pas
« Assurance Qualité » (QA) ?
En effet. Grâce à son
expérience et les
décisions de la rétro la
qualité sera nettement
meilleure à la prochaine
livraison
L’important c’est de vite
améliorer cette qualité!
La prochaine fois qu’il y a un
souci, passez par moi et pas
par un membre de l’équipe
15. Encore cette régression,
en plus elle prend des
heures, j’en ai marre!
Bon, c’est parti pour
la régression
Testeur
16. Impossible de suivre la régression
prend 1 journée entière et je la
fais tous les jours! C’est
impossible de sortir de nouvelles
fonctionnalités
Vite, la régression, je
mets tout le monde en
retard
17. Les gars, la régression
prend trop de temps,
on est bloqué
Oui, ça se ressent sur
notre vélocité et même
en t’aidant c’est trop
long… et trop rébarbatif
Oui, on ne peut pas continuer
comme ça! Si on veut garder la
même qualité il faut automatiser
les tests. Je vais t’aider sur ce
projet qui est aussi un projet de
développement!
19. Mais c’est ça que
le client veut
C’est bon, c’est
développé, on a
bien notre
pyramide
Ca ne
correspond pas à ce
que j’attends.
Voici les spécifications
pour notre pyramide!
Product
Owner
20. On ne peut pas reproduire
l’échec de la dernière US. On a
perdu beaucoup trop de
temps
Oui, un échec
comme celui-ci
suffit!
21. Les gars, pour régler le
problème je vous
propose de faire les tests
en premier: ATDD - BDD
On se met d’accord sur
des parcours d’exemple
avant de développer.
Ces tests peuvent même
servir de documentation
Du TDD de plus haut
niveau en somme et avec
plus de collaboration.
Ok pour moi!
Ok, ça fonctionne
comment ?
23. Nos tests sont automatisés
mais même comme ça
l’exécution prend 4 heures, on
ne peut les faire que la nuit, ou
sinon que les tests unitaires
C’est bien ce qu’on fait mais il
faut maintenant faire de
l’intégration continue, j’ai lu
que ça fonctionnait très bien
Je vais en parler à
l’équipe, on va
voir ce qu’on peut
faire
C’est pas bon, il faut être
plus réactif!
24. Moins de test, une priorisation
et exécuter seulement une
sélection à chaque campagne
Bon, les gars, il faut passer à
l’intégration continue avec les
tests fonctionnels inclus. Vous
avez des idées pour diminuer le
temps d’exécution des tests ?
Ou optimiser la
durée de
chaque test
On peut aussi
paralléliser les
tests et créer les
environnements
à la volée
25. Ma solution est rapide
mais demande une étude
poussée
Ok, on va essayer
toutes ces
solutions
Dans tous les
cas il y a du
travail!
La mienne va
demander une
adaptation de
notre
environnement
technique
27. Nous n’avons pas l’ensemble
des tests nécessaires pour
aller directement en
production
C’est bien l’intégration continue
mais maintenant il faut passer au
DevOps et délivrer en
production à volonté!
Il nous faudra
de nouvelles
compétences
dans l’équipe
Ecrivez-les!
28. Nos tests sont insuffisants. Il
faut ajouter des tests de
sécurité et de performances.
Quelqu’un sait les mettre en
place?
On nous demande de
passer au déploiement
continu!
Ni moi :s
Pas moi!
Moi je
peux
aider!
Ops
29. Au revoir les
malentendus
Ça tombe bien que l’on
travaille ensemble, les
déploiements seront moins
risqués.
Fini les baisses de
performances en production!
Fini les
déploiements
avortés!
31. Merci
Belle évolution, bravo
à toute l’équipe
Améliorer les tests grâce
aux logs et données
collectées pour rendre les
utilisateurs encore plus
satisfaits
Il faut maintenant optimiser
et continuer à s’améliorer.
Votre projet a été
sélectionné pour
expérimenter l’IA!
Euh… d’accord.
Par IA vous
entendez quoi ?
32. Quelqu’un
saurait le faire ?
Les gars, on a plein de données avec les
logs. Malheureusement il faut être capable
de les analyser ou permettre à une IA de le
faire
Pas moi
Ni moi !
Moi je peux
aider!
Data
Scientist
33. Je vais adapter le
code pour avoir
des données plus
pertinentes
La première chose à faire
c’est d’avoir des données
non biaisées et fiables
OK, je vais voir ce que l’on a
avec les logs de production
L’ATDD devrait
nous aider