android / android/testing-samples

Problems running tests on multidex app on Kitkat emulator after updating gradle plugin to 3.1.1

Open
#179 12 comments 1 reaction 0 assignees View on GitHub
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

Open the contributing 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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.