Cosa c'è di buono nella copertura delle dichiarazioni?

0

Quando si tratta di copertura del codice , si sente spesso parlare di flaws of coverage statement criteri. Ci viene detto che la dichiarazione non tiene conto delle strutture di controllo e dei relativi rami, ed è quindi paragonabile ad altri criteri come la copertura delle filiali, la copertura delle condizioni e persino la copertura delle funzioni.

Ma quali sono i benefici effettivi della copertura delle dichiarazioni e in quale misura viene utilizzata nell'industria (forse in collaborazione con altri criteri)? Il criterio di copertura dell'istruzione riempie ha bisogno che altri criteri non lo facciano?

    
posta Caterpillar 19.12.2014 - 10:32
fonte

1 risposta

2

L'unico vantaggio della copertura delle dichiarazioni è che è molto più facile da calcolare rispetto ad altre varianti di copertura. Hai solo bisogno di sapere se è stata eseguita una certa riga di codice e il calcolo del rapporto di copertura è semplice come contare le istruzioni che sono state eseguite e il conteggio totale delle dichiarazioni.

Con altre varianti di copertura, devi prendere il codice account prima e dopo una dichiarazione. Devi capire quale ramo di if è stato preso. Se il ciclo for è stato effettivamente eseguito. Dovresti anche calcolare in modo complesso tutti i possibili percorsi che il codice prenderebbe e conteggiare quelli per poter ottenere una copertura relativa.

La copertura delle dichiarazioni è anche molto più facile da visualizzare. Puoi semplicemente mostrare le affermazioni che sono coperte in verde e quelle che non sono in rosso. Ma per altre varianti di copertura, diventa difficile visualizzare in quale istruzione di branca è stato colpito (o meno) e con quale test.

E la ragione principale per cui è così tanto utilizzata nell'industria ora è che, essendo la più semplice, è stata utilizzata per prima. Gli utenti non vedono quindi il motivo per passare a varianti più complesse (o non si rendono nemmeno conto di esistere), il che crea una bassa richiesta di implementazione di una versione complessa effettiva e di entrare nelle menti delle persone.

    
risposta data 19.12.2014 - 10:44
fonte

Leggi altre domande sui tag