Я пытаюсь заставить плагин Gradle Java выполнять тесты jUnit, существующие в проекте Android. Мое решение состояло в том, чтобы создать второй модуль, который применяет подключаемый модуль Java, и установить тестовый исходный набор в каталог src/test модуля приложения.
build.gradle тестового модуля:
apply plugin: 'java'
...
dependencies {
...
testCompile project(':app-module')
}
sourceSets {
test {
java.srcDirs += ["${appDir}/src/test/java"]
}
}
Это отлично работает из командной строки, но Android Studio отказывается импортировать проект, исходные наборы которого находятся вне подмодуля. Выдает ошибку: Can't register given path of type 'TEST' because it's out of content root.
.
├── app-module
│ ├── build.gradle
│ └── src
│ ├── main
│ └── test
├── test-module
│ └── build.gradle
├── build.gradle
└── settings.gradle
Я попытался настроить это из родительского build.gradle, но это ничего не изменило. Я могу добавить модуль приложения в качестве зависимости проекта testCompile в тестовом модуле, но это не приводит к тому, что тестовый модуль добавляет тесты модуля приложения.
Любые идеи о том, как заставить тестовый модуль запускать тесты модуля приложения, не вызывая ограничения Android Studio в отношении наборов удаленных источников?