Che cos'è la copertura del codice?
La copertura del codice è nota come misura in cui descriviamo il grado del codice sorgente del programma che deve essere testato. La copertura del codice, in breve, è un tipo di tecnica di test in white box in cui individuiamo le parti del programma che non sono state eseguite dal set di casi di test. Si incorporano anche nella creazione di pochi casi di test in modo da elevare la copertura e la determinazione della misura abbastanza buona della copertura del codice. Tuttavia, in molti casi, questo sistema raccoglie informazioni relative al programma in esecuzione. La copertura del codice, inoltre, lo incorpora insieme alle informazioni sul codice sorgente in modo da estrarre il rapporto sulla copertura del codice della suite di test.
Come funziona la copertura del codice?
Esistono effettivamente vari approcci alla misurazione della copertura del codice. Se consideriamo in senso lato, esistono 3 degli approcci che sono i seguenti:
- Strumentazione del codice sorgente : la strumentazione del codice sorgente aggiungerà le dichiarazioni di strumentazione al codice sorgente e quindi compilerà il codice insieme al normale strumento di compilazione in modo da procurarci un assembly che è strumentato.
- Strumentazione di codice intermedio: nella strumentazione di codice intermedio, i file compilati vengono strumentati mediante l'aggiunta dei bytecode che sono nuovi e, successivamente, viene generata la nuova classe.
- Raccolta di informazioni di runtime: nella raccolta di informazioni di runtime raccogliamo le informazioni dall'ambiente che è di runtime poiché il codice viene eseguito in modo da determinare le informazioni di copertura.
Poiché il codice viene eseguito durante il test, il sistema di copertura del codice raccoglierà informazioni su quale delle dichiarazioni viene eseguita. Ora, queste informazioni verrebbero utilizzate come alcune delle basi dei rapporti. Inoltre, i metodi di copertura del codice differiscono a seconda delle varie forme delle informazioni sulla copertura che vengono raccolte. Esistono vari metodi di copertura del codice se andiamo oltre i metodi di copertura dell'istruzione di base.
Metodi di copertura del codice
Esistono molti metodi di copertura del codice. Pochi di questi sono elencati di seguito:
- Copertura delle condizioni
- Copertura degli FSM
- Copertura delle dichiarazioni
- Copertura delle decisioni
- Copertura succursale
1. Copertura delle dichiarazioni
- È la tecnica di progettazione del test white box in cui ci occupiamo dell'esecuzione di tutte le istruzioni eseguibili almeno una volta che esiste nel codice sorgente. La copertura del codice è necessaria nel calcolo, nonché nella misurazione di molte istruzioni esistenti nel codice sorgente, nonché di quelle che possono essere eseguite a condizione che vengano forniti i requisiti.
- Questo metodo è necessario nella derivazione degli scenari a seconda della struttura del codice esistente sotto il test.
2. Copertura delle decisioni
- Questo metodo è utile nella segnalazione di risultati veri o falsi di ogni espressione booleana. Le espressioni in questa copertura diventano spesso complicate. Ecco perché è abbastanza difficile ottenere una copertura del 100%.
- Questa è la vera ragione per cui esistono vari metodi per segnalare questo tipo di metrica. Questi interi metodi riguardano sostanzialmente la copertura delle combinazioni più significative. La copertura decisionale offre una grande sensibilità in modo da controllare il flusso.
3. Copertura delle filiali
- Quando parliamo di questo tipo, intendiamo che ogni output che proviene dal modulo di codice viene testato. Ad esempio, possiamo considerare che nel caso in cui gli output siano binari, testeremo gli output True e False.
- La copertura delle filiali ci aiuta a garantire che tutte le possibili filiali che derivano da ciascuna decisione, la condizione venga eseguita almeno una volta.
- Attraverso il metodo di copertura Branch, possiamo calcolare la frazione dei segmenti di codice che sono indipendenti. Inoltre, questo metodo ci consente di scoprire quali sezioni del codice non hanno i rami.
Esiste la formula del calcolo della copertura delle filiali:
Copertura filiali = numero di filiali eseguite / numero totale di filiali eseguite
4. Copertura delle condizioni
- La copertura delle condizioni, chiamata anche copertura dell'espressione, ci dice come vengono valutate le variabili o le sottoespressioni esistenti nell'istruzione condizionale.
- Consideriamo un esempio in cui un'espressione è costituita dalle operazioni booleane come AND, OR o XOR che consiste nel numero totale di possibilità.
- Questo metodo in realtà ci offre una sensibilità molto migliore per il controllo del flusso rispetto alla copertura delle decisioni. Questo metodo non ci fornisce una garanzia per quanto riguarda la copertura integrale delle decisioni.
Esiste la formula del calcolo della copertura delle filiali:
Copertura delle condizioni = Numero di operandi eseguiti / numero totale di operandi eseguiti
5. Copertura della macchina a stati finiti
- Questo metodo è considerato il tipo più complesso di metodo di copertura del codice. Il motivo è che questo metodo funziona effettivamente sul comportamento del design.
- Inoltre, in questo metodo, abbiamo avuto modo di scoprire quanti stati che sono specifici del tempo vengono visitati e transitati. Inoltre, anche questo metodo verifica quante sequenze vengono prese in considerazione nella macchina a stati finiti.
Vantaggi della copertura del codice
Di seguito alcuni dei vantaggi:
- È abbastanza utile nella valutazione della misura quantitativa della copertura del codice
- Ci consente anche di creare casi di test extra in modo da aumentare la copertura
- La copertura del codice ci consente inoltre di individuare le parti del programma che non sono esercitate dai casi di test.
Svantaggi della copertura del codice
Alcuni degli svantaggi sono riportati di seguito:
- Ogni volta che una particolare funzionalità non è ben implementata all'interno del progetto, la copertura del codice continuerebbe a riportare una copertura del 100%.
- È impossibile capire se si verificano tutti i possibili valori della funzione attraverso la copertura del codice
- Inoltre non dice quanto e quanto bene abbiamo coperto la nostra logica.
Conclusione
La copertura del codice è considerata la misura in cui descriviamo il grado di test del codice sorgente di un programma. Ci aiuta anche a calcolare l'efficienza dell'implementazione del test. Inoltre, la copertura delle dichiarazioni significa eseguire tutte le dichiarazioni eseguibili almeno una volta.
Articoli consigliati
Questa è una guida alla copertura del codice. Qui discutiamo i metodi e come funziona la copertura del codice? insieme a vantaggi e svantaggi. Puoi anche consultare i seguenti articoli per saperne di più -
- In che modo la copertura dei test semplifica il lavoro?
- Vari strumenti di test della GUI
- Tipi di test di mutazione
- Che cos'è CodeIgniter?
- Strumenti di copertura del codice | I 6 migliori strumenti di copertura del codice
- Cos'è Test Case? | Suggerimenti e trucchi