2010-08-23 8 views
16

Ich habe versucht, alle toString() - Methoden von der Instrumentierung mit folgender Konfiguration zu ignorieren. Das hat nicht wirklich funktioniert? Dies verwendet cobertura als Maven Plugin. Dies basierte auf einer früheren Antwort Exclude methods from code coverage with Cobertura.Bestimmte Methoden von Code Coverage von Cobertura ausschließen?

<instrumentation> 
    <ignores> 
     <ignore>toString</ignore> 
    </ignores> 
</instrumentation> 

Was denkst du, dass ich falsch mache. Ich konnte dafür kein Beispiel in der cobertura-Dokumentation finden.

+0

Sie könnten die einzige angebotene Antwort in Betracht ziehen –

Antwort

3

cobertura-ant reference

„Das Muster ignorieren kann jeder gültige Perl 5 regulärer Ausdruck sein. Diese Anrufe zu jeder Methode ignorieren, die der reguläre Ausdruck ignorieren übereinstimmt. Es wird nicht diese Klassen während Besetzung überspringen. Klassen auszuschließen Wenn Sie instrumentiert sind, schließen Sie sie entweder aus Ihrer Dateigruppe aus oder verwenden Sie die alternative Methode unten und geben Sie ein excludeClasses-Muster an. "

<cobertura-instrument todir="${instrumented.dir}"> 
    <ignore regex="org.apache.log4j.*" /> 
    ... 
</cobertura-instrument> 

Ich glaube, Sie müssen sie ändern „ignoriert“ auf „ignorieren“ und verwenden Sie einen regulären Ausdruck der ganzen Klassennamen vor dem Verfahren zu definieren (oder nur eine * in Sie Fall toString von jeder Klasse auszuschließen).