Maven2+Hudsonでカバレッジが取れるまで(まだ途中ッス)

カバレッジつったらdjUnitだべってことで、 ↓の更新サイトからバコっと突っ込んで動かしたら普通に動きました、と。 ============ http://works.dgic.co.jp/djunit/update/3.5.x/site.xml ============

やりたいのはMaven2+Hudsonなので、 まずはMavenだべってことで、pom.xmlに↓を追加してあげました。 ============ <dependency> <groupId>jp.co.dgic</groupId> <artifactId>djunit</artifactId> <version>0.8.4</version> <scope>test</scope> </dependency> <dependency> <groupId>asm</groupId> <artifactId>asm</artifactId> <version>3.1</version> </dependency> ============ oroとかも必要だったみたいなのですが、元々入ってたので。

なんすけど、djUnitってmavenのセントラルリポジトリに無いので ↓こんな風にローカルのリポジトリに置いてやります。 ============ mvn install:install-file -Dfile=C:tmpdjunit.jar -DgroupId=jp.co.dgic -DartifactId=djunit -Dversion=0.8.4 -Dpackaging=jar -DgeneratePom=true -DcreateChecksum=true ============ # Hudson考えると、この時点でちょっとないかなって思ったりしましたけど。

んでもって↓このWebサイトを参考にさせていただいて、 http://miau.s9.xrea.com/blog/?itemid=1048 http://d.hatena.ne.jp/tanigon/20080416#p1 http://d.hatena.ne.jp/tanamon/20080812/1218524807

maven-surefire-plugin ちゅうのを使って叩いてみました、と。 普通に叩く分には特に問題なく。 ただ、なんでdjUnitか?っていうと、カバレッジが取りたかったからなんですよね。

↓こんなオプションがあったので試してみたら、、、 ============ -Djp.co.dgic.eclipse.coverage.usecoverage=true ============

↓なんかゴタゴタ言われるんすよね。。 ========== Caused by: java.lang.NoClassDefFoundError: com/jcoverage/coverage/ConditionalImpl at com.jcoverage.coverage.InstrumentData.addConditional(InstrumentData.java:92) at com.jcoverage.coverage.asm.AsmMethodInstrumenter.visitLineNumber(AsmMethodInstrumenter.java:98) at org.objectweb.asm.ClassReader.accept(Unknown Source) at org.objectweb.asm.ClassReader.accept(Unknown Source) at jp.co.dgic.testing.common.asm3x.AsmClassReader3x.accept(AsmClassReader3x.java:22) =========

開き直ってdjUnit止めようかなと。。。。で、ちょっとネットサーフィンしてたら、、 Emma Maven Plugin っていう、なんかイカした名前のカバレッジ取れるヤツがいるらしい、と。 ↓Basic usageをみてたら、 ========= http://mojo.codehaus.org/emma-maven-plugin/examples/basic-usage.html =========

↓これだけでいいの?的な。 ========= <reporting> ... <plugins> ... <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>emma-maven-plugin</artifactId> <version>1.0-alpha-3-SNAPSHOT</version> </plugin> ... </plugins> ... </reporting> =========

で、動かしてみたら、、、、 ========= mvn emma:emma =========

処理が終了して、index.htmlとかいうのが↓に出てきたッス。 ========= targetsiteemmaindex.html =========

なーんか、画面が地味・・・

Eclipseで流した結果と比べてみても、若干数パーセント違ったりするとこあるけど、 まぁいいのかな的な。。。

で、Coberturaを叩いてみました。 ↓これによると、BasicConfigurationってそれだけでいいんだ風だったので、 ========= http://mojo.codehaus.org/cobertura-maven-plugin/usage.html ========= 設定だけして、mvn cobertura:cobertura を叩いてみたら、、、 普通に成功して↓のデザインもいい感じ。 ========= argetsitecoberturaargetsitecobertura =========

こいつをHudsonにもってくと、なんかいろいろあるらしいんですが、 明日以降に。。。

Apache Maven 2.0入門 Java・オープンソース・ビルドツール
野瀬 直樹 横田 健彦
技術評論社
売り上げランキング: 60077
おすすめ度の平均: 5.0
5 タイトル通り、入門にはもってこい!です。
5 Eclipseに組込み可能
5 単なる使用方法の解説に留まらない、すばらない内容です。