2009年02月03日(火) [長年日記]
- 初めてLinuxでVMWare Playerを使ったが、設定方法がよく分からない。Windowsだとvmnetcfg.exeでネットワークの設定ができるけど、Linuxだとどうすればいいのか。
■ [java] Cobertura でカバレッジを測定した
昨日のJMockitでは十分な結果を得られなかったので、Coberturaを使ってみることにした。こちらは素直に動いた。
インストール
Cobertura 1.9のアーカイブをダウンロードして展開するとトップディレクトリに cobertura.jar というファイルがあり、libディレクトリにもいくつかjarファイルがある。これら全てをクラスパスに含めれば使用できる。
Antに組み込んでカバレッジを測る
junitタスクを既に使っているとして、その前に cobertura-instrument タスクを実行し、junitタスクが完了したら cobertura-report タスクを実行すればいい。次のような感じ。ドキュメントにある通りにすればよい。
<target name="coverage" depends="...">
<delete file="cobertura.ser" /> <!-- 削除が必要みたい -->
<path id="cobertura.classpath">
<fileset dir="...">
<include name="cobertura.jar"/>
<include name="lib/**/*.jar"/>
</fileset>
</path>
<taskdef classpathref="cobertura.classpath"
resource="tasks.properties"/>
<cobertura-instrument todir="...">
<fileset dir="..." includes="**/*.class"/>
</cobertura-instrument>
<junit fork="yes">
<formatter type="plain" usefile="no"/>
<classpath>
<pathelement location="..."/>
<pathelement location="..."/>
<pathelement location="..."/>
</classpath>
<batchtest fork="yes">
<fileset dir="...">
<include name="**/*Test.java"/>
</fileset>
</batchtest>
</junit>
<cobertura-report destdir="...">
<fileset dir="nantoka/src/src" includes="**/*.java"/>
<fileset dir="kantoka/src" includes="**/*.java"/>
</cobertura-report>
</target>
[ツッコミを入れる]