2008-08-12
■[maven2][memo]maven-surefire-plugin(djUnitを使用)
Unitテストを実行するmaven-surefire-pluginの設定
id:tanigonさんのこの記事が大変参考になりました。ありがたいことです。
/project/build/plugins
<!-- UnitTest(DjUnit使用) -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.4.2</version>
<configuration>
<!-- ↓改行させるとClassNotFoundExceptionが出る -->
<argLine>-Djava.system.class.loader=jp.co.dgic.testing.common.DJUnitClassLoader -Djp.co.dgic.eclipse.virtualmock.usevirtualmock=true -Djp.co.dgic.eclipse.coverage.usecoverage=false -Djp.co.dgic.eclipse.project.source.dir="${project.build.sourceDirectory}" -Djp.co.dgic.eclipse.virtualmock.ignore.library=false</argLine>
<forkMode>always</forkMode>
<useSystemClassLoader>true</useSystemClassLoader>
</configuration>
</plugin>
オプションはほぼおまじないなので省略。以下は注意点。
- コメントにあるようにargLineに改行が入るとエラーになりますので、1行で書きます。
- ${project.build.sourceDirectory}が""でくくられていますが、これがないとHudsonなど(正確にはスペースが含まれるディレクトリ上)で実行するとエラーになります。
この2つは知らないと超ハマるので気をつけてください。
/project/dependencies
<!-- jUnit / djUnit -->
<dependency>
<groupId>jp.co.dgic</groupId>
<artifactId>djunit</artifactId>
<version>0.8.3</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>asm</groupId>
<artifactId>asm</artifactId>
<version>3.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>oro</groupId>
<artifactId>oro</artifactId>
<version>2.0.8</version>
<scope>test</scope>
</dependency>
djunit, junit, asm, oroが必要になります。
(djunitの内部でoroを使っているので、oroも必須です)
トラックバック - http://d.hatena.ne.jp/tanamon/20080812/1218524807
リンク元
- 234 http://miau.s9.xrea.com/blog/?itemid=1048
- 163 http://d.hatena.ne.jp/asc_gamefreak/20110226/1298775317
- 69 https://www.google.co.jp/
- 68 http://www.google.co.jp/search?hl=ja&client=firefox-a&rls=org.mozilla:ja:official&q=maven-compiler-plugin+source&btnG=検索&lr=lang_ja
- 63 http://miau.s9.xrea.com/blog/index.php?itemid=1048
- 58 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=17&cts=1331043264028&ved=0CFwQFjAGOAo&url=http://d.hatena.ne.jp/tanamon/20080812/1218538340&ei=sRtWT_ePOejnmAWN3uX5CQ&usg=AFQjCNFei5T2hA_dA3K93w2sZAdtN08l5w
- 52 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cts=1331010886938&ved=0CC0QFjAB&url=http://d.hatena.ne.jp/tanamon/20080812/1218521763&ei=Ip1VT-i7NKabmQX32Ly1Cg&usg=AFQjCNEpbDY4S1EKWsb9jgKYhBQYmJIcjQ
- 48 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=3&ved=0CEYQFjAC&url=http://d.hatena.ne.jp/tanamon/20080812/1218524807&ei=DMOXT_-1BM6ZmQWZ-rGFBg&usg=AFQjCNF8wsf5Lfy3DQRoB6236gXptHNqAg&sig2=vR0DcsaqzjDvoes-qzeIyg
- 43 http://www.google.co.jp/search?q=maven-compiler-plugin&lr=lang_ja&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:ja:official&client=firefox-a
- 41 http://www.google.co.jp/url?sa=t&rct=j&q=maven-surefire-plugin&source=web&cd=4&ved=0CEYQFjAD&url=http://d.hatena.ne.jp/tanamon/20080812/1218524807&ei=okiETuCTCa2NmQWX0ZUc&usg=AFQjCNF8wsf5Lfy3DQRoB6236gXptHNqAg
