ほとんどのjavancssツールは、ソースコードで指定されているメソッド引数を使用します。変数名は削除されますが、クラス名はFQNではありません。
たとえば、次のクラスが与えられます。
import java.io.File;
public class Demo {
public void show ( java.io.File file) {
//do some thing with file..
}
public void show2(File win) {
//do some thing with win
}
}
Javancssは出力を生成します
Nr. NCSS CCN JVDC Function
1 1 1 0 Demo.show(java.io.File)
2 1 1 0 Demo.show2(File)
Average Function NCSS: 1.00
Average Function CCN: 1.00
Average Function JVDC: 0.00
Program NCSS: 4.00
show2には、java.io.FileではなくFileのみが付属していることに注意してください。処理には、完全修飾名が必要です。レポートにFQNを出力できるncssツールはありますか?(coberturaに組み込まれているjavacssとcheckstyleを試しました。すべて同じように動作します)
編集(背景)メソッドごとにcobertutaカバレッジレポートを作成します。複雑度が高く、カバレッジが低いメソッドについてレポートが必要です。メソッドのCCNをマッピングしようとすると、上記の場合に問題が発生しました。これは、FQNではなくクラス名のみを比較することで(部分的に)解決されました。