2015-01-28 9 views
21

Attualmente sto utilizzando Java con il framework Play. Ho dei test JUnit e sto cercando di misurare la copertura con il corridore di copertura di IntelliJ.IntelliJ: esclude alcune classi (pacchetti) dal rapporto di copertura del test

Il gioco genera sfortunatamente alcune classi di spazzatura e IntelliJ le include nel rapporto. C'è un modo di escluso alcuni modelli dal rapporto di copertura?

+0

Sono nella stessa barca con classi di framework che condividono un pacchetto con il mio codice - avere un'esclusione esplicita sarebbe utile (tutte le classi in un pacchetto tranne x, yez). – Quad64Bit

risposta

1

È possibile specificare quali classi verranno aggiunte ai dati di copertura modificando la configurazione di esecuzione del test (test) in esecuzione.

Fare clic su "Modifica configurazioni" dopo aver selezionato il test, aprire la scheda Impostazioni copertura codice e all'interno di "Pacchetti e classi per registrare i dati di copertura" è possibile restringere i pacchetti dal codice di produzione incluso nella registrazione della copertura.

+4

Non c'è modo di escludere i pacchetti? Questa era la domanda originale Ho molti pacchetti, uno dei quali contiene codice generato e sta inquinando le metriche di copertura. Preferirei non dover aggiornare continuamente le impostazioni di esecuzione ogni volta che aggiungo un nuovo pacchetto –

+0

Bene, se stai generando del codice, dovresti fornire abbastanza informazioni a intellij per contrassegnare il codice come cartella "esclusa" (tramite Maven, gradle o così). Quindi non verrà incluso nella copertura del codice per impostazione predefinita. Ad ogni modo, non ho riscontrato alcuna esclusione esplicita dei pacchetti, ma posso consigliarti di impostare il tuo modello per il test dell'unità per impostare i pacchetti in modo sopra citato. Dopo che ogni prova verrà ereditata da questo modello. – MichalD

+0

Quando si tratta di un progetto Maven e viene segnalato (l'icona di aggiornamento) le cartelle tornano a dove IntelliJ pensa di appartenere, sono le tue esclusioni. Quindi, questo non è un suggerimento utile, davvero. –