Hi masters,
I’m encountering error when trying to use appium desktop for espresso driver, and here is the error code:
[Instrumentation] INSTRUMENTATION_STATUS: Error=Permission Denial: starting instrumentation ComponentInfo{io.appium.espressoserver.test/androidx.test.runner.AndroidJUnitRunner} from pid=6840, uid=6840 not allowed because package io.appium.espressoserver.test does not have a signature matching the target com.xxxxx.xx.debug
and the capabilities:
{
“automationName”: “Espresso”,
“platformName”: “Android”,
“deviceName”: “qa_1”,
“udid”: “emulator-5554”,
“showGradleLog”: true,
“appPackage”: “com.xxxxx.xx.debug”,
“noReset”: true,
“forceEspressoRebuild”: true,
“noSign”: true
}
I’ve tried some the solutions here, but still get the same result:
- Add dependency as https://developer.android.com/training/testing/espresso/setup#groovy mentioned, and re-build the app.
- Clean all data in app, and re-install app on emulator.
- Reboot emulator
- Restart appium desktop
- Even copy this apk to another machine
The one thing that got me confused is the description in https://github.com/appium/appium-espresso-driver#troubleshooting,
“Espresso requires the debug APK and app-under-test APK (AUT) to have the same signature. It automatically signs the AUT with the io.appium.espressoserver.test signature. This may have problems if you’re using an outdated Android SDK tools and/or an outdated Java version.”
- How do I check if these two signature are the same?
- if they don’t, how to i sign them?
- Is anything i’m missing here?