Test instrumentation process crashed. After click action app should restarted but with espresso is crashed - automation

Steps to reproduce :
I just create a simple test case (Just click on the button)
After clicking on this button, the app should be restarted (Hard Restart) (Expected Result)
Testcase will fail and I get this error (Actual Result)
(Test instrumentation process crashed. Check tests.SplashActivityTest#splashActivityTest.txt for details)
The data on file mentioned before :
INSTRUMENTATION_RESULT: shortMsg=Process crashed.
INSTRUMENTATION_CODE: 0
Prerequisites:
`android {
defaultConfig {
...
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
testInstrumentationRunnerArguments clearPackageData:'true'
} }
...
testOptions {
unitTests.returnDefaultValues = true
execution 'ANDROIDX_TEST_ORCHESTRATOR'
}
.....
dependencies {
// Espresso Dependencies
androidTestImplementation 'androidx.test:core:1.5.0-beta01'
androidTestImplementation 'androidx.test.ext:junit:1.1.4-beta01'
androidTestImplementation 'androidx.test:runner:1.4.0'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.0-beta01'
androidTestImplementation 'com.android.support.test:rules:1.0.2'
androidTestImplementation 'androidx.test:rules:1.4.1-beta01'
androidTestImplementation 'androidx.test.ext:junit-ktx:1.1.3'
androidTestImplementation 'androidx.test.uiautomator:uiautomator:2.2.0'
androidTestImplementation 'androidx.test.espresso:espresso-contrib:3.5.0-beta01'
androidTestImplementation 'androidx.test.espresso:espresso-intents:3.4.0'
androidTestImplementation 'com.jakewharton.espresso:okhttp3-idling-resource:1.0.0'
androidTestImplementation('com.schibsted.spain:barista:3.6.0') {
exclude group: 'org.jetbrains.kotlin'
}
// orchestrator
androidTestUtil 'androidx.test:orchestrator:1.4.1'
}`
I try with API 31 and 33 with Emulator and real devices too
Can anyone here help me with this issue?
Thanks

Do you have log from Logcat ?
Try to increase the orchestrator version to 1.4.2 and before that try to start your test with API 29.

Related

Gradle integration test task for Kotlin classes

I have a Gradle project with Kotlin with 3 source folders (main, test, integration). I want to set up different Gradle test tasks for unit and integration tests. That what those test and integration folders are for. I tried several solutions to set up integration test task but nothing worked so far. It's mentioned everywhere that I need to create a different sourceSet for integration, add some configuration to be able to compile the code in that folder properly and set up the task itself. It's all done, but when I run the tests, they fail. The report then says ClassNotFound for everything basically what is inside that(integration) folder.
build.gradle file and the output results are attached below
buildscript {
ext.kotlin_version = '1.3.71'
ext.ktor_version = '1.3.2'
ext.exposed_version = '0.22.1'
ext.kodein_version = '6.5.0'
ext.postgres_version = '42.2.6'
ext.stripe_version = '17.16.0'
ext.junit_version = '5.6.0'
ext.log4j2_version = '2.13.1'
ext.aws_sdk_version = '1.11.734'
ext.html_to_pdf_version = '1.0.0'
ext.kotlintest_version = '4.0.2'
repositories {
maven { url "https://kotlin.bintray.com/kotlinx" }
maven { url "https://repository.jboss.org/nexus/content/repositories/thirdparty-releases/" }
mavenCentral()
maven { url "https://plugins.gradle.org/m2/" }
jcenter()
}
dependencies {
classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
classpath "javax.jms:jms:1.1"
}
}
plugins {
id("java")
id 'org.jetbrains.kotlin.jvm' version '1.3.71'
id 'org.jetbrains.kotlin.plugin.serialization' version '1.3.71'
id("application")
}
group 'nz.co.redium'
mainClassName = 'nz.co.redium.bookmybusiness.ApplicationKt'
repositories {
mavenCentral()
jcenter()
maven { url "https://dl.bintray.com/kotlin/ktor" }
}
compileKotlin {
kotlinOptions.jvmTarget = "12"
}
compileTestKotlin {
kotlinOptions.jvmTarget = "12"
}
sourceSets {
integration {
java.srcDir "$projectDir/src/integration/kotlin"
kotlin.srcDir "$projectDir/src/integration/kotlin"
resources.srcDir "$projectDir/src/integration/resources"
compileClasspath += main.output + test.output
runtimeClasspath += main.output + test.output
}
}
configurations {
integrationImplementation.extendsFrom testImplementation
integrationRuntime.extendsFrom testRuntime
}
test {
useJUnitPlatform()
afterTest { desc, result ->
println "Executing test ${desc.name} [${desc.className}] with result: ${result.resultType}"
}
}
//create a single Jar with all dependencies
task fatJar(type: Jar) {
manifest {
attributes 'Implementation-Title': 'Gradle Jar File Example',
'Multi-Release': true,
'Main-Class': "$mainClassName"
}
project.archivesBaseName = project.name + '-full'
from { configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) } }
with jar
}
task integrationTest(type: Test) {
useJUnitPlatform()
description = 'Runs the integration tests.'
group = 'verification'
testClassesDirs = sourceSets.integration.output.classesDirs
classpath = sourceSets.integration.runtimeClasspath
outputs.upToDateWhen { false }
mustRunAfter test
afterTest { desc, result ->
println "Executing test ${desc.name} [${desc.className}] with result: ${result.resultType}"
}
}
check.dependsOn integrationTest
dependencies {
implementation "io.ktor:ktor-server-core:$ktor_version"
implementation "io.ktor:ktor-server-host-common:$ktor_version"
implementation "io.ktor:ktor-server-netty:$ktor_version"
implementation "io.ktor:ktor-jackson:$ktor_version"
implementation "io.ktor:ktor-locations:$ktor_version"
implementation "io.ktor:ktor-gson:$ktor_version"
implementation "io.ktor:ktor-client-serialization:$ktor_version"
implementation "io.ktor:ktor-client-serialization-jvm:$ktor_version"
implementation "io.ktor:ktor-client-jetty:$ktor_version"
implementation "org.kodein.di:kodein-di-generic-jvm:$kodein_version"
implementation "org.jetbrains.exposed:exposed-core:$exposed_version"
implementation "org.jetbrains.exposed:exposed-dao:$exposed_version"
implementation "org.jetbrains.exposed:exposed-jdbc:$exposed_version"
implementation "org.jetbrains.exposed:exposed-jodatime:$exposed_version"
implementation "org.postgresql:postgresql:$postgres_version"
implementation "org.apache.logging.log4j:log4j-api:$log4j2_version"
implementation "org.apache.logging.log4j:log4j-core:$log4j2_version"
implementation "org.apache.logging.log4j:log4j-slf4j-impl:$log4j2_version"
implementation "org.springframework.security:spring-security-core:5.1.5.RELEASE"
implementation "com.amazonaws:aws-java-sdk-ses:$aws_sdk_version"
implementation "com.amazonaws:aws-java-sdk-s3:$aws_sdk_version"
implementation "com.stripe:stripe-java:$stripe_version"
implementation "org.apache.velocity:velocity-engine-core:2.1"
implementation "com.openhtmltopdf:openhtmltopdf-core:$html_to_pdf_version"
implementation "com.openhtmltopdf:openhtmltopdf-pdfbox:$html_to_pdf_version"
implementation "com.fasterxml.jackson.module:jackson-module-kotlin:2.10.3"
implementation "org.jetbrains.exposed:exposed-jodatime:$exposed_version"
implementation "io.rest-assured:rest-assured:4.3.0"
implementation "org.hamcrest:hamcrest:2.2"
testImplementation "io.kotest:kotest-runner-junit5-jvm:$kotlintest_version" // for kotest framework
testImplementation "io.kotest:kotest-assertions-core-jvm:$kotlintest_version" // for kotest core jvm assertions
testImplementation "org.assertj:assertj-core:3.11.1"
testImplementation "org.junit.jupiter:junit-jupiter-api:$junit_version"
testImplementation "org.junit.jupiter:junit-jupiter-params:$junit_version"
testImplementation "io.ktor:ktor-server-tests:$ktor_version"
testImplementation "io.ktor:ktor-server-core:$ktor_version"
testImplementation "io.ktor:ktor-server-host-common:$ktor_version"
testImplementation "io.ktor:ktor-gson:$ktor_version"
testImplementation "io.mockk:mockk:1.9.3"
testImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.3.5'
testRuntime "org.junit.jupiter:junit-jupiter-engine:$junit_version"
}
> Task :integrationClasses UP-TO-DATE
Skipping task ':integrationClasses' as it has no actions.
:integrationClasses (Thread[Daemon worker Thread 29,5,main]) completed. Took 0.0 secs.
:integrationTest (Thread[Daemon worker Thread 29,5,main]) started.
Gradle Test Executor 19 started executing tests.
Gradle Test Executor 19 finished executing tests.
> Task :integrationTest FAILED
file or directory '/opt/receptioner/bookmybusiness/build/classes/java/integration', not found
Caching disabled for task ':integrationTest' because:
Build cache is disabled
Task ':integrationTest' is not up-to-date because:
Task.upToDateWhen is false.
file or directory '/opt/receptioner/bookmybusiness/build/classes/java/integration', not found
Starting process 'Gradle Test Executor 19'. Working directory: /opt/receptioner/bookmybusiness Command: /usr/lib/jvm/java-13-openjdk-amd64/bin/java -Dorg.gradle.native=false #/tmp/gradle-worker-classpath16424721448345780337txt -Xmx512m -Dfile.encoding=UTF-8 -Duser.country=NZ -Duser.language=en -Duser.variant -ea worker.org.gradle.process.internal.worker.GradleWorkerMain 'Gradle Test Executor 19'
Successfully started process 'Gradle Test Executor 19'
Finished generating test XML results (0.0 secs) into: /opt/receptioner/bookmybusiness/build/test-results/integrationTest
Generating HTML test report...
Finished generating test html results (0.0 secs) into: /opt/receptioner/bookmybusiness/build/reports/tests/integrationTest
:integrationTest (Thread[Daemon worker Thread 29,5,main]) completed. Took 0.523 secs.
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':integrationTest'.
> There were failing tests. See the report at: file:///opt/receptioner/bookmybusiness/build/reports/tests/integrationTest/index.html
* Try:
Run with --stacktrace option to get the stack trace. Run with --debug option to get more log output. Run with --scan to get full insights.
* Get more help at https://help.gradle.org
Deprecated Gradle features were used in this build, making it incompatible with Gradle 7.0.
Use '--warning-mode all' to show the individual deprecation warnings.
See https://docs.gradle.org/6.2.1/userguide/command_line_interface.html#sec:command_line_warnings
BUILD FAILED in 1s
13 actionable tasks: 1 executed, 12 up-to-date
It's weird though that the failed task refers to classes/java/integration folder (which does't exist) instead of classes/kotlin/integratin folder, which does exist and this is where the compiled code resides in.
It was my bad. After I moved the code from test to integration folder, some resources inside (those which are responsible for initializing the classes) were pointing to the old directory test, not integration. The Gradle build file is correct.

Not able to run unit tests on kotlin Multiplatform project

I am trying to create a kotlin Multiplatform library which can later convert into java and javascript using  IDEA 2019.3, kotlin 1.3 .
I created a simple junit (4) test class and configured it as follows.
package sample;
import org.junit.Test;
public class Tests {
#Test
public void test1(){
System.out.println("here");
}
}
But while running, it’s failing with
Process finished with exit code 1 Class not found: "sample.DummyTest"
I could not figure out what am I doing wrong. Please advice.
check your name of class test, it could be: com.package.example.Tests
or click right on your class and make the configuration:
if you want to run all test (included unitest from implements modules) in your project, create this configuration:
in your gradle dependencies check this import
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'

httpclient conflict with classes now provided by Android

In Android Studio 3.4.1
app/build.gradle:
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation 'com.android.support:appcompat-v7:28.0.0'
implementation 'org.apache.httpcomponents:httpclient:4.5.9'
testImplementation 'junit:junit:4.12'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
}
But I get error in this line;
implementation 'org.apache.httpcomponents:httpclient:4.5.9'
error:
httpclient defines classes that conflict with classes now provided by Android. Solutions include finding newer versions or alternative libraries that don't have the same problem (for example, for httpclient use HttpUrlConnection or okhttp instead), or repackaging the library using something like jarjar. more... (Ctrl+F1)
Check out this changelog for the Android API.
You should replace the Apache HTTP functions by HttpURLConnection or use this snipped in your build.gradle to continue using the now deprecated Apache libraries.
android {
useLibrary 'org.apache.http.legacy'
}

Expo SDK 33 Update Error in ExpoKit33 or React-native

I was using SDK 30. And my app is a standalone app.
I was going to update SDK33 to launch a 64-bit app.
So I did it in the order that it was written on the homepage. But I've made a lot of errors about where the problem is.
my app.bundle
buildscript {
repositories {
google()
jcenter()
maven { url 'https://maven.fabric.io/public' }
}
dependencies {
classpath 'io.fabric.tools:gradle:1.+'
}
}
apply plugin: 'com.android.application'
apply plugin: 'io.fabric'
repositories {
maven { url 'https://maven.fabric.io/public' }
}
android {
compileSdkVersion 28
buildToolsVersion '28.0.3'
defaultConfig {
applicationId 'com.jackson.myapp'
targetSdkVersion 26
versionCode 1
versionName '1.0.0'
ndk {
abiFilters "armeabi-v7a", "x86"
}
multiDexEnabled true
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
// Deprecated. Used by net.openid:appauth
manifestPlaceholders = [
'appAuthRedirectScheme': 'host.exp.exponent'
]
}
dexOptions {
javaMaxHeapSize System.getenv("DISABLE_DEX_MAX_HEAP") ? null : "8g"
}
flavorDimensions 'minSdk'
productFlavors {
devMinSdk {
dimension 'minSdk'
// dev utilizes minSDKVersion = 21 to allow the Android gradle plugin
// to pre-dex each module and produce an APK that can be tested on
// Android Lollipop without time consuming dex merging processes.
minSdkVersion 21
}
prodMinSdk {
dimension 'minSdk'
minSdkVersion 19
}
}
buildTypes {
debug {
debuggable true
ext.enableCrashlytics = false
}
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
zipAlignEnabled true
}
}
signingConfigs {
debug {
storeFile file('../debug.keystore')
}
}
lintOptions {
abortOnError false
}
packagingOptions {
pickFirst "**"
exclude "lib/arm64-v8a/librealm-jni.so"
}
configurations.all {
resolutionStrategy.force 'com.android.support:design:28.0.0'
}
compileOptions {
sourceCompatibility 1.8
targetCompatibility 1.8
}
}
// Don't use modern jsc-android since it still has some critical bugs that
// crash applications when the string for the JS bundle is loaded and when
// locale-specific date functions are called.
// configurations.all {
// resolutionStrategy {
// force 'org.webkit:android-jsc:r216113'
// }
// }
apply from: 'expo.gradle'
dependencies {
implementation project(':react-native-iap')
implementation project(':react-native-fetch-blob')
implementation project(':react-native-touch-id')
implementation project(':react-native-keychain')
implementation project(':react-native-fs')
implementation project(':react-native-secure-randombytes')
implementation project(':react-native-fast-crypto')
implementation fileTree(dir: 'libs', include: ['*.jar'])
api 'host.exp.exponent:expo-app-loader-provider:+'
api 'org.unimodules:core:+'
api 'org.unimodules:unimodules-constants-interface:+'
api 'host.exp.exponent:expo-constants:+'
api 'org.unimodules:unimodules-file-system-interface:+'
api 'host.exp.exponent:expo-file-system:+'
api 'org.unimodules:unimodules-image-loader-interface:+'
api 'host.exp.exponent:expo-permissions:+'
api 'org.unimodules:unimodules-permissions-interface:+'
api 'org.unimodules:unimodules-sensors-interface:+'
api 'host.exp.exponent:expo-react-native-adapter:+'
api 'host.exp.exponent:expo-task-manager:+'
api 'org.unimodules:unimodules-task-manager-interface:+'
// Optional universal modules, could be removed
// along with references in MainActivity
api 'host.exp.exponent:expo-ads-admob:+'
api 'host.exp.exponent:expo-app-auth:+'
api 'host.exp.exponent:expo-analytics-segment:+'
api 'org.unimodules:unimodules-barcode-scanner-interface:+'
api 'host.exp.exponent:expo-barcode-scanner:+'
api 'org.unimodules:unimodules-camera-interface:+'
api 'host.exp.exponent:expo-camera:+'
api 'host.exp.exponent:expo-contacts:+'
api 'host.exp.exponent:expo-face-detector:+'
api 'org.unimodules:unimodules-face-detector-interface:+'
api 'host.exp.exponent:expo-font:+'
api 'host.exp.exponent:expo-gl-cpp:+'
api 'host.exp.exponent:expo-gl:+'
api 'host.exp.exponent:expo-google-sign-in:+'
api 'host.exp.exponent:expo-local-authentication:+'
api 'host.exp.exponent:expo-localization:+'
api 'host.exp.exponent:expo-location:+'
api 'host.exp.exponent:expo-media-library:+'
api 'host.exp.exponent:expo-print:+'
api 'host.exp.exponent:expo-sensors:+'
api 'host.exp.exponent:expo-sms:+'
api 'host.exp.exponent:expo-background-fetch:+'
implementation 'expolib_v1.com.google.android.exoplayer:expolib_v1-extension-okhttp:2.6.1#aar'
apply from: "../../node_modules/react-native-unimodules/gradle.groovy"
implementation 'com.android.support:multidex:1.0.1'
// Our dependencies
implementation 'com.android.support:appcompat-v7:28.0.0'
// Our dependencies from ExpoView
// DON'T ADD ANYTHING HERE THAT ISN'T IN EXPOVIEW. ONLY COPY THINGS FROM EXPOVIEW TO HERE.
implementation 'com.facebook.android:facebook-android-sdk:4.34.0'
implementation('com.facebook.android:audience-network-sdk:4.99.0') {
exclude module: 'play-services-ads'
}
compileOnly 'org.glassfish:javax.annotation:3.1.1'
implementation 'com.jakewharton:butterknife:8.4.0'
implementation 'de.greenrobot:eventbus:2.4.0'
implementation 'com.amplitude:android-sdk:2.9.2' // Be careful when upgrading! Upgrading might break experience scoping. Check with Jesse. See Analytics.resetAmplitudeDatabaseHelper
implementation 'com.squareup.picasso:picasso:2.5.2'
implementation 'com.google.android.gms:play-services-gcm:15.0.1'
implementation 'com.google.android.gms:play-services-analytics:16.0.1'
implementation 'com.google.android.gms:play-services-maps:15.0.1'
implementation 'com.google.android.gms:play-services-auth:15.0.1'
implementation 'com.google.android.gms:play-services-location:15.0.1'
implementation 'com.google.android.gms:play-services-ads:15.0.1'
annotationProcessor 'com.raizlabs.android:DBFlow-Compiler:2.2.1'
implementation "com.raizlabs.android:DBFlow-Core:2.2.1"
implementation "com.raizlabs.android:DBFlow:2.2.1"
implementation "com.madgag.spongycastle:core:1.53.0.0"
implementation "com.madgag.spongycastle:prov:1.53.0.0"
debugImplementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.4-beta1'
// debugImplementation 'com.squareup.leakcanary:leakcanary-android:1.4-beta1'
releaseImplementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.4-beta1'
implementation 'com.facebook.device.yearclass:yearclass:1.0.1'
implementation 'commons-io:commons-io:1.3.2'
implementation 'me.leolin:ShortcutBadger:1.1.4#aar'
implementation 'com.nostra13.universalimageloader:universal-image-loader:1.9.5'
implementation 'com.theartofdev.edmodo:android-image-cropper:2.4.7'
implementation 'com.yqritc:android-scalablevideoview:1.0.1'
implementation 'commons-codec:commons-codec:1.10'
implementation 'com.segment.analytics.android:analytics:4.3.0'
implementation 'com.google.zxing:core:3.2.1'
implementation 'net.openid:appauth:0.4.1'
implementation('com.airbnb.android:lottie:2.5.5') {
exclude group: 'com.android.support', module: 'appcompat-v7'
}
implementation('io.nlopez.smartlocation:library:3.2.11') {
transitive = false
}
implementation 'com.android.support:exifinterface:28.0.0'
implementation 'com.squareup.okio:okio:1.9.0'
// Testing
androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.1'
// We use a modified build of com.android.support.test:runner:1.0.1. Explanation in maven-test/README
androidTestImplementation 'com.android.support.test:runner:1.0.1'
androidTestImplementation 'com.android.support:support-annotations:28.0.0'
androidTestImplementation 'com.google.code.findbugs:jsr305:3.0.0'
androidTestImplementation 'com.android.support.test.uiautomator:uiautomator-v18:2.1.1'
androidTestImplementation 'com.azimolabs.conditionwatcher:conditionwatcher:0.2'
testImplementation 'junit:junit:4.12'
testImplementation 'org.mockito:mockito-core:1.10.19'
testImplementation 'org.robolectric:robolectric:3.8'
testImplementation 'com.android.support.test:runner:1.0.2-alpha1'
testImplementation 'com.android.support.test:rules:1.0.2-alpha1'
}
// This has to be down here for some reason
apply plugin: 'com.google.gms.google-services'
ERROR: Failed to resolve: org.unimodules:core:+
Show in Project Structure dialog
Affected Modules: app
ERROR: Failed to resolve: host.exp.exponent:expo-react-native-adapter:+
Show in Project Structure dialog
Affected Modules: app
ERROR: Unable to resolve dependency for ':app#prodMinSdkDebug/compileClasspath': Could not find expolib_v1.com.google.android.exoplayer:expolib_v1-extension-okhttp:2.6.1.
Show Details
Affected Modules: app
ERROR: Unable to resolve dependency for ':app#prodMinSdkDebugAndroidTest/compileClasspath': Could not find expolib_v1.com.google.android.exoplayer:expolib_v1-extension-okhttp:2.6.1.
Show Details
Affected Modules: app
ERROR: Unable to resolve dependency for ':app#prodMinSdkDebugUnitTest/compileClasspath': Could not find expolib_v1.com.google.android.exoplayer:expolib_v1-extension-okhttp:2.6.1.
Show Details
Affected Modules: app
ERROR: Unable to resolve dependency for ':app#prodMinSdkRelease/compileClasspath': Could not find expolib_v1.com.google.android.exoplayer:expolib_v1-extension-okhttp:2.6.1.
Show Details
Affected Modules: app
ERROR: Unable to resolve dependency for ':app#prodMinSdkReleaseUnitTest/compileClasspath': Could not find expolib_v1.com.google.android.exoplayer:expolib_v1-extension-okhttp:2.6.1.
Show Details
Affected Modules: app
ERROR: Unable to resolve dependency for ':app#devMinSdkDebug/compileClasspath': Could not find expolib_v1.com.google.android.exoplayer:expolib_v1-extension-okhttp:2.6.1.
Show Details
Affected Modules: app
ERROR: Unable to resolve dependency for ':app#devMinSdkDebugAndroidTest/compileClasspath': Could not find expolib_v1.com.google.android.exoplayer:expolib_v1-extension-okhttp:2.6.1.
Show Details
Affected Modules: app
ERROR: Unable to resolve dependency for ':app#devMinSdkDebugUnitTest/compileClasspath': Could not find expolib_v1.com.google.android.exoplayer:expolib_v1-extension-okhttp:2.6.1.
Show Details
Affected Modules: app
ERROR: Unable to resolve dependency for ':app#devMinSdkRelease/compileClasspath': Could not find expolib_v1.com.google.android.exoplayer:expolib_v1-extension-okhttp:2.6.1.
Show Details
Affected Modules: app
ERROR: Unable to resolve dependency for ':app#devMinSdkReleaseUnitTest/compileClasspath': Could not find expolib_v1.com.google.android.exoplayer:expolib_v1-extension-okhttp:2.6.1.
Show Details
Affected Modules: app
How can I fix this error? I don't know which part, so there's too much to solve.
Follow steps defined below "If upgrading from SDK32 or below:"
https://docs.expo.io/versions/latest/expokit/expokit/#upgrading-expokit
I got the project back to square one, and then executed it in order.
My difference is not using npm but using Yarn.
It was very effective, and I removed all the places where 'expolib_v1' was present.

What is the equivalent androidTestUtil in a test-only module

Initially I was using Android Test Orchestrator in my app module. So I had this line in my build.gradle file:
dependencies {
androidTestUtil "androidx.test:orchestrator...`
...
}
However I am now moving to a test-only module. All of the androidTestImplementation keywords become just implementation. But what should I do for androidTestUtil? Should it become just util?
According to Android's documentation it should still be:
androidTestUtil 'androidx.test:orchestrator:x.x.x'
Just make sure you update
testOptions {
execution 'ANDROID_TEST_ORCHESTRATOR'
}
to
testOptions {
execution 'ANDROIDX_TEST_ORCHESTRATOR'
}
Credit: Android Test Orchestrator not working with Android X