Cette prose par Alberto Savoia répond précisément à cette question (dans une bien divertissant façon!):
Testivus Sur La Couverture De Test
Tôt un matin, un programmeur demandé
le grand maître:
"Je suis prêt à écrire des tests unitaires. Ce que la couverture de code dois-je viser
pour?"
Le grand maître a répondu:
"Ne vous inquiétez pas au sujet de la couverture, il suffit d'écrire quelques bons tests."
Le programmeur sourit, inclina la tête, et
de gauche.
...
Plus tard dans la journée, un second programmeur
posé la même question.
Le grand maître a souligné un pot de
d'ébullition de l'eau et dit:
"Combien de grains de riz que j'ai mis dans ce pot?"
Le programmeur, l'air perplexe,
a répondu:
"Comment puis-je vous dire? Cela dépend de combien de personnes vous avez besoin de
d'alimentation, la faim, ils sont, ce que les autres
la nourriture que vous servez, combien de riz
vous avez à disposition, et ainsi de suite."
"Exactement," dit le grand maître.
Le second programmeur sourit, inclina la tête,
et à gauche.
...
Vers la fin de la journée, un troisième
programmeur est venu et a demandé la même chose
question à propos de la couverture de code.
"Quatre-vingts pour cent et pas moins!" A répondu à la maîtrise d'une voix sévère,
martelant du poing sur la table.
La troisième programmeur sourit, inclina la tête,
et à gauche.
...
Après cette dernière réponse, un jeune
apprenti approché de la grande
maître:
"Grand maître, aujourd'hui je vous ai surpris répondre à la même question à propos de
la couverture de code avec trois différents
réponses. Pourquoi?"
Le grand maître s'est levé de son
président:
"Venez prendre un bol de thé avec moi et parlons-en."
Après, ils ont rempli leurs tasses avec
le fumage à chaud de thé vert, de la grande
maître a commencé à répondre:
"Le premier programmeur de l'histoire est nouvelle et juste de commencer avec les essais.
En ce moment il a beaucoup de code et pas de
les tests. Il a un long chemin à parcourir;
en se concentrant sur la couverture de code en ce moment
serait déprimant et tout à fait inutile.
Il est mieux de juste à s'habituer à
l'écriture et l'exécution des tests. Il peut
vous soucier de la couverture plus tard."
"Le second programmeur, d'autre part, est tout à fait une expérience à la fois
lors de la programmation et les tests. Quand J'
répondu en lui demandant combien de grains
de riz que je doit mettre dans un pot, j'
a aidée à réaliser que le montant de
tests nécessaires dépend d'un certain nombre
de facteurs, et elle sait que les
facteurs mieux que moi – c'est sa
code, après tout. Il n'est pas seul,
simple, répondre, et elle est assez intelligente
pour faire face à la vérité et à travailler avec
".
"Je vois," dit le jeune apprenti,
"mais si il n'est pas simple
réponse, alors, pourquoi avez-vous répondre à la
troisième programmeur " quatre-vingts pour cent et
pas moins"?"
Le grand maître de rire si dur et
fort de son ventre, la preuve qu'il
bu plus que juste de thé vert,
flop en haut et en bas.
"La troisième programmeur ne veut que des réponses simples – même quand il y a
pas de réponses simples ... et puis ne pas
suivre de toute façon."
Le jeune apprenti et le grisonnant
grand maître fini de boire leur
thé dans le silence contemplatif.
Le point de l'ensemble de cette anecdote, c'est que vous devriez essayer et ne pas se concentrer sur le taux de couverture en soi, ou essayer de trouver un nombre arbitraire, mais plutôt se concentrer sur d'avoir autant de la logique et de la fonctionnalité testée qu'il est humainement possible.
Il est tout à fait raisonnable d'avoir un, disons, 50% de taux de couverture, si seulement parce que seulement 50% de ce code contient des logiques qui peuvent être testés, et les autres 50% se trouve être simple Otd ou des choses qui sont traitées par un cadre (vous n'avez pas besoin de tester les fonctionnalités de votre cadre).