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 *

Automatisation

Les dérives de l’automatisation

Introduction Nous l’avons vu dans un chapitre précédent, il y a plusieurs raisons pour lesquelles on peut vouloir automatiser. Il est d’ailleurs primordial de toujours garder à l’esprit les raisons pour lesquelles on souhaite automatiser sous peine de dérives qui mènent l’automatisation à aller à l’encontre de son objectif initial.

Lire la suite »
Automatisation

Programmez: L’émergence des outils d’automatisation sans script : pourquoi sont-ils de plus en plus utilisés ?

L’automatisation des tests n’est plus une question ! Les raisons pour lesquelles nous automatisons sont nombreuses et variées. On peut par exemple penser au : gain de temps sur l’exécution des tests ce qui peut permettre de dégager du temps aux testeurs, de diminuer ses coûts ou de diminuer son « Time to

Lire la suite »
culture générale

Gérer le risque par les tests vs. La Covid-19

Dans cette période de crise sanitaire, on nous parle beaucoup de risques. Le risque de contamination, de transmission ou de développement de symptômes graves. Cette notion est également très présente dans le test logiciel et encore plus lorsqu’il s’agit de qualité logicielle. En effet, selon le contexte, et surtout la

Lire la suite »