Quelle utilisation de la couverture des tests ?
Utilisation habituelle …
Le plus souvent, pour les équipes de test fonctionnel, la couverture des tests est une matrice de contrôle qui fait le lien entre les risques, les exigences et les scénarios de test.
Dès lors que les scénarios répondent bien aux exigences, aux risques connus, et sont exécutés avec succès, la couverture de test est validée. Elle couvre donc les risques… théoriquement.
Ou une utilisation stratégique
Cependant, il est possible d’aborder la couverture des tests sous un autre angle, qui va apporter des informations beaucoup plus riches et utiles pour améliorer les tests et augmenter leur efficacité.
Décrypter la couverture des tests
Qu’est-ce que c’est ?
Il s’agit de voir la couverture réelle des tests réalisés sur l’application. En clair, c’est l’étude de ce qui a effectivement été exécuté dans le code par les tests. Nous appelons cela « l’empreinte » des tests dans l’application.
Couverture globale
De manière globale sur l’application, il devient possible de voir exactement :
- Ce qui a été testé
- Ce qui n’a pas été testé
Cela va permettre de s’assurer que les différents sous-ensembles de l’application sont bien couverts par un scénario de test au moins. Cependant tester toute l’application est rarement possible au regard du temps qui serait nécessaire pour cela…
Enrichir l’information
Afin d’exploiter encore mieux la connaissance de la couverture des tests, il est idéal de vérifier que les tests couvrent les changements réalisés dans la version de l’application reçue. Ainsi vous anticipez les risques de régression et maximisez l’efficacité de vos activités de test.
Pour ce faire, Kalistick identifie les changements réalisés et leurs impacts. Ensuite, la plateforme vérifie s’ils sont couverts par l’un des scénarios du référentiel de test.
Si des changements apparaissent comme non testés, les équipes de test peuvent réagir rapidement et orienter leurs efforts sur ces zones applicatives à fort risque de régression.
Bien entendu, plus la date de fin des tests est proche, plus cette information est importante.
Lors des dernières phases de test, il est impossible de tout re-tester à chaque livraison. Il est alors impératif de ne sélectionner que quelques jeux de test et de s’assurer que rien n’a été manqué.
C’est également la situation lors de versions mineures ou de correctifs. Les délais et la charge de test alloués font qu’il est impossible de tout tester. Identifier les scénarios impactés par les changements focalise l’effort sur les tests pertinents et augmente la réactivité de l’équipe.
Prendre l’empreinte de chaque test est encore plus efficace
Dans les outils de test traditionnels, la couverture des tests est souvent regardée globalement ; sans tenir compte des chemins d’exécution de chaque test dans l’application, et sans distinguer chaque test. Kalistick, en capturant l’empreinte de chaque scénario individuellement, apporte une valeur encore plus importante aux équipes de test.
Lors de l’exécution d’un scénario, chaque action exécutée dans l’application est enregistrée pour mémoriser l’empreinte individuelle du test. Ainsi, lorsqu’une nouvelle version est reçue, le système détecte les scénarios dont les empreintes sont impactées et dont les résultats sont compromis et devraient être ré-exécutés.
Si il faut choisir parmi ces derniers, ou pour ceux qui appliquent une stratégie de test orientée par les risques (Risk Based Testing – RBT) Kalistick apporte un complément idéal. En se basant sur l’empreinte de chaque scénario sur le code et sur les risques fonctionnels de l’application, le système indique quels scénarios sont pertinents pour chaque sous-ensemble fonctionnel.
Le « Test Learning System »
C’est le nom de la technologie de Kalistick qui va vous aider à améliorer vos tests !
Voyons le fonctionnement de ce système de manière synthétique :
- Lorsqu’un test est exécuté, il est enregistré.
- Les actions effectuées dans l’application sont mises en relation avec les parties du code utilisées.
- La relation entre le test et les parties du code concernées est établie.
- Une nouvelle empreinte est créée.
Grâce à l’intégration avec HP Quality Center, cette opération est simple et automatique. A chaque exécution d’un test, le processus d’enregistrement est automatiquement déclenché et une nouvelle empreinte est mémorisée.
Décision de Go sécurisée
Grâce au Test Learning System, vous sécurisez votre décision de Go. En effet, la couverture réelle des tests indique si les zones de risques principales sont testées pour que le risque de régression soit minimisé.
