Я пытаюсь обновить свой проект до недавно выпущенной версии библиотеки поддержки тестирования Android 1.0.0. Но если я добавлю assertj-core
зависимость Gradle, инструментальные тестовые задачи начинают терпеть неудачу с сообщением "Нет тестов". Однако я могу успешно запускать отдельные тесты из IDE.
Легко воспроизвести проблему:
- Создайте новый проект из Android Studio 3 с пустой активностью.
- Добавить
assertj-core
зависимость. - Запустите контрольные тесты из командной строки
./gradlew connectedDebugAndroidTest
.
Gradle script.
android {
defaultConfig {
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
}
dependencies {
implementation 'com.android.support:appcompat-v7:26.0.0'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.0'
androidTestImplementation group: "org.assertj", name: "assertj-core", version: "2.8.0"
}
Консольный выход.
com.android.builder.testing.ConnectedDevice > No tests found.
[Nexus_4_API_25(AVD) - 7.1.1] FAILED
No tests found. This usually means that your test classes are not in the form that your test runner expects (e.g. don't inherit from TestCase or lack @Test annotations).
Тесты успешно выполняются при понижении до уровня com.android.support.test:runner
до предыдущей версии 0,5.