Как запустить тесты JUnit с помощью Gradle?


В настоящее время у меня есть следующее построить.gradle file:

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')
}    


Это построить.gradle файл для моего репозитория здесь. Все мои основные файлы src / model/ и их соответствующие тесты находятся в тест/модель.

Как добавить JUnit 4 зависимость правильно, а затем запустить эти тесты в папках тесты/модели?

3 57

3 ответа:

Как правильно добавить зависимость junit 4?

предполагая, что вы решаете против стандартного Maven (или эквивалентного) РЕПО:

dependencies {
    ...
    testCompile "junit:junit:4.11"  // Or whatever version
}

запустите эти тесты в папках tests / model?

вы определяете свой исходный набор тестов таким же образом:

sourceSets {
    ...

    test {
        java {
            srcDirs = ["test/model"]  // Note @Peter's comment below
        }
    }
}

затем вызовите тесты как:

./gradlew test

EDIT: если вы используете JUnit 5 вместо этого, есть больше шагов для завершения, вы должны следовать в этом уроке.

Если вы настроили свой проект со структурой пакета gradle по умолчанию, т. е.:

src/main/java
src/main/resources
src/test/java
src/test/resources

тогда вам не нужно будет изменять исходные наборы для выполнения тестов. Gradle выяснит, что ваши тестовые классы и ресурсы находятся в src/test. Затем вы можете запустить, как Оливер говорит выше. Обратите внимание: будьте осторожны при настройке файлов свойств и запуске тестовых классов как с gradle, так и с IDE. Я использую Eclipse, и при запуске JUnit из него Eclipse выбирает один путь к классу (bin каталог), тогда как gradle выбирает другой (каталог сборки). Это может привести к путанице, если вы редактируете файл ресурсов и не видите свое изменение, отраженное во время выполнения теста.

если вы создали свой проект с Spring Initializr, все должно быть правильно настроен и все, что вам нужно сделать, это запустить...

./gradlew clean test --info
  • Drop --info Если вы не хотите, чтобы увидеть результаты теста.
  • Drop clean Если вы не хотите, чтобы повторно запустить тесты, которые уже прошли с момента последнего изменения.

зависимости, необходимые в build.gradle для испытания в ботинке весны...

dependencies {
    compile('org.springframework.boot:spring-boot-starter')
    testCompile('org.springframework.boot:spring-boot-starter-test')
}

для по какой-то причине тестовый бегун не говорит вам об этом, но он создает отчет HTML в build/reports/tests/test/index.html.