Как запустить тесты JUnit с помощью Gradle?
В настоящее время у меня есть следующий файл 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 для моего репозитория здесь. Все мои основные файлы находятся в src/model/, и их соответствующие тесты находятся в тесте/модели.
Как добавить правильную зависимость JUnit 4, а затем запустить те тесты в папках тестов/модели?
Ответы
Ответ 1
Как добавить правильную зависимость junit 4?
Предполагая, что вы разрешаете стандартное Maven (или эквивалентное) репо:
dependencies {
...
testCompile "junit:junit:4.11" // Or whatever version
}
Запускать эти тесты в папках тестов/модели?
Вы определяете свой тестовый источник так же:
sourceSets {
...
test {
java {
srcDirs = ["test/model"] // Note @Peter comment below
}
}
}
Затем вызовите тесты как:
./gradlew test
Ответ 2
Если вы настроили свой проект с помощью структуры пакета gradle по умолчанию, то есть:
src/main/java
src/main/resources
src/test/java
src/test/resources
вам не нужно будет изменять исходные настройки для запуска ваших тестов. gradle выяснит, что ваши тестовые классы и ресурсы находятся в src/test. Затем вы можете работать, как говорит Оливер. Следует отметить: будьте осторожны при настройке файлов свойств и запуске тестовых классов с помощью gradle и вы IDE. Я использую Eclipse, и при запуске JUnit из него Eclipse выбирает один путь к классам (каталог bin), тогда как gradle выбирает другой (каталог сборки). Это может привести к путанице, если вы отредактируете файл ресурсов и не увидите, что ваши изменения отражены во время тестирования.