2012-11-14 7 views
10

Attualmente utilizzo Clover per misurare la copertura del codice del mio codice Java. Una caratteristica che Mi affido è la possibilità di escludere le sezioni arbitrarie di codice da rapporti di copertura:Strumenti di copertura del codice Java che supportano le esclusioni della linea di origine

///CLOVER:OFF because this case is simpler to verify by code read 
if (lFile.isFile() && 
    lFile.getName().endsWith(FILE_EXTN) && 
    !lFile.delete()) 
{ 
    throw new IOException("delete() failed for: " + lFile); 
} 
///CLOVER:ON 

Trovo questo tipo di esclusione rende molto più facile concentrarsi sui test logica interessante mentre ancora giungere ad una copertura 100% del codice .

Esistono altri strumenti di copertura del codice Java (gratuiti oa pagamento) che supportano questo tipo di esclusione a grana fine? Le esclusioni dell'intera classe o dell'intero metodo non sono sufficienti.

NOTA: attualmente sto esaminando l'aggiunta di qualcosa di adatto a JaCoCo (Issue #14).

+1

EMMA può aggiungere il supporto simile in futuro; cf. http://emma.sourceforge.net/faq.html * "Una funzionalità che consente agli utenti EMMA di contrassegnare metodi arbitrari come esclusi dalla copertura viene presa in considerazione per le versioni future." * –

+2

Sfortunatamente ciò sembra improbabile poiché la versione più recente di EMMA è dal 2005. Tuttavia, grazie per il link. – mchr

+1

Non vedo perché è stato chiuso. Questa domanda è obiettivamente rispondibile. – AHungerArtist

risposta

1

Dalla mia esperienza, il seguente tutto funziona bene:

  • In termini di closed-source: Clover
  • In termini di open source: Cobetura (ma non funziona con Java 7), EMMA
Problemi correlati