La taverne du testeur

Duel: faux-positif vs faux-négatif

Intro

S’il est bien 2 termes que j’ai confondus pendant de longues années c’est bien les termes « faux positif » et « faux négatif ». Je pense d’ailleurs que je ne suis pas le seul à avoir eu cette difficulté de compréhension tant ces termes sont peu présents dans le quotidien des testeurs alors que je me rappelle avoir parlé de ce concept lors de la certification fondation ISTQB et qu’ils figurent bien dans le glossaire ISTQB.

Définition

La définition des 2 termes est assez simple:

  • Faux-positif: Un résultat de test dans lequel un défaut est rapporté alors qu’en réalité ce défaut n’existe pas dans l’objet de test

Concrètement un faux positif est un test en échec alors qu’il devrait être en succès. C’est un problème fréquent avec des tests peu fiables et instables et qui peut poser de graves problèmes dans les campagnes automatisées et plus particulièrement les chaînes d’intégration continue.

Le plus simple pour réussir à bien différencier les 2 (et qui est mon moyen mnémotechnique) est de penser à des tests qui ne sont pas des tests logiciels mais des tests pour détecter des maladies (comme le CoVid).

Dans le cas des tests CoVid un faux-positif est un test où l’on est détecté comme ayant le CoVid alors que l’on n’a pas.

  • Faux-négatif: Un résultat de test qui n’a pas identifié la présence d’un défaut qui est réellement présent dans l’objet de test

Ici on est sur un test qui ne repère pas une anomalie alors qu’il le devrait. Cela reflète généralement un défaut de conception mais il sont complexes à détecter car on analyse rarement les tests en succès. C’est pour cela que je considère les faux-négatifs comme plus dangereux que les faux-positifs.

Dans le cas des tests CoVid il y a de nombreux faux-négatifs, particulièrement avec les tests anti-géniques. Ces faux-négatifs indiquent que des personnes ne sont pas infectés alors qu’ils le sont. Cela se repère souvent avec des personnes faisant plusieurs tests à quelques jours d’intervalle, les premiers tests s’avérant négatifs et le dernier (souvent PCR car plus fiable) positif.

Pourquoi cette confusion ?

Cette confusion vient du fait que le concept de faux-positif et faux-négatif sont des concepts basés sur des négations (faux) et sur l’idée que un test « positif » est un test en échec et qu’un test « négatif » est un test en succès quand il est en succès… on est donc ici sur une sorte de double négation et, pour être honnête, mon cerveau (et celui de nombreuses personnes) n’est pas forcément conçu pour cela.

Je dois également avouer que la définition qui se trouve sur le glossaire ISTQB ne m’a pas aidé:

  • Faux-négatif : Voir faux-succès

le « négatif » devient « succès » ce qui est associe ces 2 termes généralement contradictoires

  • Faux-positif : Voir faux-échec

le « positif » devient « échec » en associant encore 2 termes contradictoires.

Ces 2 associations peuvent vite être inversées afin d’associer le « positif » au « succès » et le « négatif » à « l’échec »

Conclusion

Les notions de « faux-positifs » et « faux-négatifs » sont des concepts clés du test logiciel mais assez complexe à bien appréhender ce qui amène à peu utiliser ces termes. Ces termes proches sont souvent confondus pour des raisons logiques et linguistiques. Le meilleur moyen pour bien comprendre ces concept ne vient pas de l’industrie logicielle mais de notre vie de tous les jours avec des tests de détection comme les tests CoVid.

Pensez à rejoindre le groupe « Le métier du test » si vous souhaitez échanger sur le test

Merci à tous ceux qui mettent « j’aime », partagent ou commentent mes articles

N’hésitez pas à faire vos propres retours d’expérience en commentaire.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

conférence

[JFTL] Retours de participants

En juillet dernier la taverne vous proposait un webinaire proposant des retours sur la JFTL. Lors de cet événement nous avons lancé un sondage pour avoir les vôtres. Cet article a pour but de restituer ces retours en s’appuyant sur le sondage mais aussi et surtout sur les retours directs

Lire la suite »
Automatisation

Outil de test : automatiser ses tests de navigateur avec Kasaya

Kasaya En bref : Un nouvel arrivant dans les outils de tests : Kasaya L’avantage de cet outil est que ce que vous voyez c’est ce que vous obtenez. Autrement dit, les actions qui seront décrites (un peu comme du Keyword Driven Testing) dans votre script seront compréhensibles par le navigateur (Chrome

Lire la suite »
culture générale

La journée type du testeur

On me pose régulièrement la question : « Qu’est-ce qu’une journée type pour un testeur? ». Pour être honnête le terme « testeur » est trop complexe et regroupe trop de métier pour que l’on ait cette « journée type »… Et j’ai envie de dire Heureusement, car sinon, ce métier serait vraiment monotone ! Pour rappel j’ai déjà

Lire la suite »