Glossaire · Fondamentaux du test
Sanity test (test de cohérence)
En anglais : Sanity testing
Également appelé : sanity test, sanity tests, test de cohérence, test de bon sens
Définition
Vérification étroite et ciblée après une petite modification ou un correctif, pour confirmer que la zone concernée fonctionne comme prévu avant de poursuivre les tests.
Le sanity test (test de cohérence ou de bon sens) est une vérification rapide et ciblée qui confirme qu’une modification précise fonctionne et que la zone autour se comporte toujours de façon cohérente. Il intervient après une correction de bug ou un changement mineur, sur un build déjà raisonnablement stable. Si le sanity check échoue, le build repart en développement sans qu’on perde de temps sur une campagne de régression complète.
Exemple
Un rapport de bug indique que l’e-mail « Mot de passe oublié » n’est pas envoyé lorsque l’adresse contient un signe plus (ana+test@example.com). Le développeur livre un correctif. Un sanity check consisterait à :
- Demander une réinitialisation pour
ana+test@example.comet confirmer que l’e-mail arrive. - Demander une réinitialisation pour une adresse normale et confirmer que cela fonctionne toujours.
- Suivre le lien de réinitialisation et confirmer que le nouveau mot de passe est accepté.
C’est tout. Personne ne vérifie ici le panier ni le module de reporting. Si ces étapes passent, le build passe aux tests de régression.
Sanity test ou smoke test
| Sanity test | Smoke test | |
|---|---|---|
| Portée | Étroite et assez profonde, une fonctionnalité ou un correctif | Large et superficielle, toute l’application |
| Déclencheur | Un correctif précis ou une petite modification | Chaque nouveau build |
| État du build | Déjà assez stable | Inconnu, peut-être cassé |
| Forme | Souvent non scripté, réalisé par un testeur | En général une suite scriptée et automatisée |
Certaines équipes décrivent le sanity test comme un sous-ensemble des tests de régression centré sur la zone modifiée. C’est une façon raisonnable de le voir.
Un mot sur la terminologie
Les définitions varient selon les entreprises et les manuels, et certaines équipes emploient « smoke » et « sanity » de façon interchangeable. En entretien, donnez la distinction ci-dessus, puis précisez que ce qui compte en pratique, c’est que l’équipe s’accorde sur ce que couvre chaque vérification et sur le moment où elle s’exécute. Être précis tout en reconnaissant l’ambiguïté fait meilleure impression que s’accrocher à un seul manuel.