"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > La vérité sur la couverture des tests

La vérité sur la couverture des tests

Publié le 2024-11-06
Parcourir:598

The truth about test coverage

Une vérité puissante.

Regardez le code suivant, simple et direct :

function sum(a, b) {
  return a   b;
}

Maintenant, écrivons quelques tests pour cela :

test('sum', () => {
  expect(sum(1, 2)).toBe(3);
  expect(sum(2, 3)).toBe(5);
  expect(sum(3, 4)).toBe(7);
  expect(sum(4, 5)).toBe(9);
});

Nous avons une couverture à 100 %, n'est-ce pas ? Eh bien, oui, nous le faisons, en fait, nous pourrions dire que nous avons obtenu une couverture de 400 % car tout le code est entièrement testé 4 fois, mais le faisons-nous ?

La vérité est que nous ne le faisons pas. Nous testons la fonction avec un ensemble limité d'entrées, et nous ne prenons pas en compte les cas extrêmes, ni nous testons la fonction avec des entrées non valides.

Considérez les éléments suivants :

sum(1, '2');
sum(1, null);
sum(1, undefined);

Que se passerait-il dans un tel scénario ? La fonction générerait-elle une erreur ? Est-ce que cela renverrait une valeur ? Cela briserait-il notre application ?

Soyez conscient du piège de la couverture des tests.

La couverture des tests est un outil puissant, mais ce n'est pas la solution ultime. Il s'agit d'une métrique qui peut vous aider à comprendre dans quelle mesure votre code est testé, mais elle ne vous indique pas dans quelle mesure il est testé.

La couverture des tests peut vous aider en termes de quantité, mais elle ne peut pas faire grand-chose en termes de qualité. C'est à vous d'écrire de bons tests, de prendre en compte les cas extrêmes, de tester votre code avec des entrées non valides et de vous assurer que vos tests sont significatifs et précieux.

Conclusion

C'était un article assez court, je l'avoue, mais j'espère qu'il vous a été utile pour vous rappeler l'importance d'écrire de bons tests. N'oubliez pas que la couverture des tests est un outil et non un objectif. A vous d'en tirer le meilleur parti.

Ciao,

Michel.

Déclaration de sortie Cet article est reproduit sur : https://dev.to/cadienvan/the-truth-about-test-coverage-3gko?1 En cas de violation, veuillez contacter [email protected] pour le supprimer.
Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3