Code Coverage

Testing 🟢 Junior

Définition

Métrique qui mesure le pourcentage de code exécuté par les tests (lignes, branches, fonctions). Utile comme indicateur mais trompeur comme objectif unique.

Analogie

Comme mesurer le pourcentage de pièces visitées lors d'une inspection de maison : visiter 100% ne garantit pas d'avoir vu les fissures.

Exemple de code

// jest.config.js
module.exports = {
  collectCoverage: true,
  coverageThreshold: {
    global: {
      branches: 80,
      functions: 80,
      lines: 80,
    },
  },
};

Cas d'usage

Comme garde-fou pour détecter les zones non testées, avec un seuil raisonnable (70-80%).

Anti-pattern

Viser 100% de coverage en écrivant des tests sans assertions utiles juste pour couvrir les lignes.
#testing#interview#qualite

En entretien

  1. Que mesure le code coverage, et pourquoi ne suffit-il pas comme objectif ?

    Il mesure le pourcentage de code exécuté par les tests, en lignes, branches ou fonctions. Mais viser 100% pousse à écrire des tests sans assertions utiles juste pour couvrir des lignes, sans garantir que le comportement est vraiment vérifié.

  2. Comment utiliserais-tu la coverage de façon saine dans un projet ?

    Comme un garde-fou pour repérer les zones non testées, avec un seuil raisonnable autour de 70 à 80%. C'est un indicateur, pas une preuve de qualité des tests.

Fiche mise à jour le 2026-09-27

← → au clavier pour passer d'une fiche à l'autre