LoginSignup
4
4

More than 5 years have passed since last update.

Gradle + Coberturaでsrc/test/resources以下のファイルがリソースとして読み込まれない

Last updated at Posted at 2014-05-12

test/resourcesに依存したテストを書いている場合、
./gradlew testだとテストが成功するが、
./gradlew coberturaだとテストが成功しない。

./gradlew coberturaの時は、どうやらリソースを見に行ってくれる先が、$buildDir/instrumented_classesになっているらしい。

$buildDir/instrumented_classesにクラスを持って行ったりとかはcoberturaReportタスクでしているカバレッジリポートを取得するための準備作業らしいのだけれども、コレが原因でJenkinsさんが怒りまくるので、以下をtestタスクに書いて回避した。

訂正)間違えてた。。。アクションになってないからClearしちゃうとダメになってました。

def instDir = "$buildDir/instrumented_classes"
task setInstResources(){
    dependsOn 'testClasses'
}
setInstResources << {
  copy{
    from sourceSets.test.output.resourcesDir
    into instDir
  }
}
test {
  dependsOn 'setInstResources'
  useJUnit()
}
4
4
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
4