現在、次のbuild.gradleファイルがあります。
apply plugin: 'Java'
sourceSets {
main {
Java {
srcDir 'src/model'
}
}
}
dependencies {
compile files('libs/mnist-tools.jar', 'libs/gson-2.2.4.jar')
runtime fileTree(dir: 'libs', include: '*.jar')
}
このbuild.gradleファイルはリポジトリ用です here 。私のメインファイルはすべてsrc/model /にあり、それぞれのテストはtest/model。
JUnit 4dependencyを正しく追加し、tests/model?
Junit 4依存関係を正しく追加するにはどうすればよいですか?
標準のMaven(または同等の)リポジトリに対して解決すると仮定します。
dependencies {
...
testCompile "junit:junit:4.11" // Or whatever version
}
テスト/モデルのフォルダーでこれらのテストを実行しますか?
同じ方法でテストソースセットを定義します。
sourceSets {
...
test {
Java {
srcDirs = ["test/model"] // Note @Peter's comment below
}
}
}
次に、次のようにテストを呼び出します。
./gradlew test
編集:代わりにJUnit 5を使用している場合、完了するにはさらに手順があります。 このチュートリアル に従う必要があります。
デフォルトのgradleパッケージ構造でプロジェクトをセットアップした場合、つまり:
src/main/Java
src/main/resources
src/test/Java
src/test/resources
テストを実行するためにsourceSetsを変更する必要はありません。 Gradleは、テストクラスとリソースがsrc/testにあることを把握します。その後、Oliverが上記のように実行できます。注意すべき点が1つあります。プロパティファイルを設定し、GradleとIDEの両方でテストクラスを実行する場合は注意してください。私はEclipseを使用し、それからJUnitを実行するとき、Eclipseは1つのクラスパス(binディレクトリ)を選択しますが、gradleは別のクラスパス(ビルドディレクトリ)を選択します。これは、リソースファイルを編集し、テストランタイムに変更が反映されない場合に混乱を招く可能性があります。
Spring Initializr を使用してプロジェクトを作成した場合、すべてを正しく構成する必要があり、実行する必要があるのは実行するだけです...
./gradlew clean test --info
--info
をドロップします。clean
をドロップします。Spring Bootでテストするためにbuild.gradle
で必要な依存関係...
dependencies {
compile('org.springframework.boot:spring-boot-starter')
testCompile('org.springframework.boot:spring-boot-starter-test')
}
何らかの理由で、テストランナーはこれを通知しませんが、build/reports/tests/test/index.html
でHTMLレポートを生成します。