для конкретного проекта нам нужно запустить тестовые комплекты Espresso и Robolectric, но кажется, что их зависимости, похоже, очень сильно конфликтуют.Android JUnit запускает как тестовые комплекты Espresso, так и Robolectric
Поэтому мой вопрос: возможно ли, чтобы они были оба, или мы должны решить другое решение?
Наш Gradle файл:
apply plugin: 'com.android.application'
apply plugin: 'jacoco'
android {
compileSdkVersion 24
buildToolsVersion "24.0.2"
defaultConfig {
targetSdkVersion 24
minSdkVersion 15
versionCode 1
versionName "1.0"
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
}
buildTypes {
debug {
testCoverageEnabled true
}
}
}
dependencies {
androidTestCompile('com.android.support.test.espresso:espresso-core:2.2.2', {
exclude group: 'com.android.support', module: 'support-annotations'
})
compile 'com.android.support:appcompat-v7:24.2.1'
compile 'com.android.support:design:24.2.1'
compile 'com.android.support:support-v4:24.2.1'
compile 'com.android.support:recyclerview-v7:24.2.1'
androidTestCompile 'junit:junit:4.12'
androidTestCompile "org.robolectric:robolectric:3.1.4"
compile ('com.github.nkzawa:socket.io-client:0.3.0')
}
Спасибо заранее.
Вы посмотрите на этот ответ: http://stackoverflow.com/questions/29021331/confused-about-testcompile-and-androidtestcompile-in-android-gradle? Кроме того, согласно документации: http://robolectric.org/getting-started/, вам необходимо использовать testCompile для Robolectric вместо androidTestCompile. –
Я попробовал это с помощью 'testCompile', но это приводит к тому же. Он просто не компилируется. – qantik
Можете ли вы также попробовать использовать testCompile для JUnit и robolectric? Я попытался создать файл build.gradle на моей машине с помощью buildToolsVersion «24.0.3» и скомпилировал его. –