きり丸の技術日記

技術検証したり、資格等をここに残していきます。

Gradleでマルチモジュールにしている状態から別モジュールのテストコードを共有する

テストのセットアップメソッドや、ファイルからドメインを生成するメソッド等々の便利メソッドを作るとします。マルチモジュールの場合、基本的にはプロダクトコードしか依存しないので、テストの便利メソッドは共有しません。

今回の記事では、テストコードを共有して、テストの便利メソッドを1つのモジュールに書けばすべてのモジュールで使用できる状態にします。

環境

  • gradle
    • 7.4.1

対応

Gradleの依存関係でテストコードを共有するようにします。

testImplementation project(':モジュール名').sourceSets.test.output

// kirimaru-coreの記載したテストコードを共有します
testImplementation project(':kirimaru-core').sourceSets.test.output

ソースコード

kirimaru-repositoryからkirimaru-coreのテストコードを依存させています。

終わりに

各モジュールで似たようなセットアップメソッドを作成していて、非常に面倒だと思っていました。マルチモジュールにしているからしかたないと考えていたのですが、1行で別モジュールから簡単に依存できてよかったです。

まぁ、本音を言えば、JavaでFactory_bot、Factory_boyがあるならもうちょっと楽なんですがね…。

参考情報