android / android/testing-samples
Problems running tests on multidex app on Kitkat emulator after updating gradle plugin to 3.1.1
- Dominant language
- Java
- Stars
- 9.3k
- Forks
- 3.6k
- PR merge metrics
- No merged PRs in 30d
Description
Hello,
I've stumbled upon an issue after updating gradle plugin to 3.1.1.
I've tried to replicate on BasicSample (https://github.com/googlesamples/android-testing/tree/master/ui/espresso/BasicSample) project and got something very similar to my project's errors. Please take a look at 3 subsequent commits on the forked repo.
1. https://github.com/fada21/android-testing/commit/13488879e62e07349f204fc969642c25fe5af089
Working state of my project based on BasicSample. With not too many changes on top of BasicSample tests on Kitkat and Oreo emulator pass. All working fine.
2. https://github.com/fada21/android-testing/commit/8d314542c1823958a4dde7bac0a129bdcf9bcf02
After update to gradle build tool to 3.1.1 with few necessary changes tests on Kitkat emulator fail when they pass with no problems on Oreo. I think that is relevant console output part
```
> Task :app:compileDebugAndroidTestJavaWithJavac
Note: /home/fada21/Projects/android/android-testing/ui/espresso/BasicSample/app/src/androidTest/java/com/example/android/testing/espresso/BasicSample/ChangeTextBehaviorTest.java uses or overrides a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Warning: The rule `-keep public class *extends java.lang.annotation.Annotation {
*;
}` uses extends but actually matches implements.
Starting 0 tests on Nexus_4_API_19(AVD) - 4.4.2
com.android.builder.testing.ConnectedDevice > No tests found.[Nexus_4_API_19(AVD) - 4.4.2] 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).
```
3. https://github.com/fada21/android-testing/commit/edc2613da4784002d04561578ca9c3de45ee616d
After disabling multidex test pass on both emulators
My ci pipelines fail after update and I can't disable multidex. Any ideas? Should I report that to tools team?
Cheers,
Lukasz
Contributor guide
Research direction
Reproduce the issue in the BasicSample project using the three linked commits, the Gradle plugin 3.1.1 update, multidex, and KitKat and Oreo emulators. Start with the connected-device test output showing “No tests found”; done means the tests run successfully on KitKat with multidex enabled as well as on Oreo.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- mobile-dev, testing
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100