Capitolo 7. Misurare la coperturacon Coverage.py
Questo lavoro è stato tradotto utilizzando l'AI. Siamo lieti di ricevere il tuo feedback e i tuoi commenti: translation-feedback@oreilly.com
Quanto sei fiducioso in una modifica del codice quando i test passano?
Se si considerano i test come un modo per individuare i bug, è possibile descriverne la sensibilità e la specificità.
La sensibilità della tua suite di test è la probabilità di fallimento di un test in presenza di un difetto nel codice. Se ampie parti del codice non sono testate o se i test non verificano il comportamento atteso, la sensibilità è bassa.
La specificità dei tuoi test è la probabilità che essi passino se il codice è privo di difetti. Se i tuoi test sono deboli (falliscono a intermittenza) ofragili (falliscono quando si cambiano i dettagli dell'implementazione), allora hai una bassa specificità. Invariabilmente, le persone smettono di prestare attenzione ai test che falliscono. Questo capitolo, però, non riguarda la specificità.
C'è un ottimo modo per aumentare la sensibilità dei tuoi test: quando aggiungi o modifichi un comportamento, scrivi un test che fallisce prima del codice che lo fa passare. In questo modo, la tua suite di test catturerà le tue aspettative sul codice.
Un'altra strategia efficace è quella di testare il tuo software con i vari input e vincoli ambientali che ti aspetti di incontrare nel mondo reale. Verifica i casi limite di una funzione, come le liste vuote o i numeri negativi. Testa gli ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access