Fixed
Status Update
Comments
sl...@google.com <sl...@google.com> #2
This is handled by a filter in the runner, however there weren't any changes to the filter code from 1.0.0 to 1.0.0-alpha-1. Can you try to run a test on an FTL virtual device and dump the return value of android.os.Build.HARDWARE to logcat and post it here?
sl...@google.com <sl...@google.com>
su...@twofortyfouram.com <su...@twofortyfouram.com> #3
On FTL the Build.HARDWARE is "gce_x86". For this test I used NexusLowRes API 26.
If I change the version of espresso to 3.0.0 the problem does not occur. If I change it to 3.0.0-alpha-1, then the problem does occur consistently. Something seems to have changed between these versions.
If I change the version of espresso to 3.0.0 the problem does not occur. If I change it to 3.0.0-alpha-1, then the problem does occur consistently. Something seems to have changed between these versions.
sl...@google.com <sl...@google.com> #4
Thanks! In that case @RequiresDevice will not filter out the test, because we only check for "goldfish" and "ranchu" emulator hardware. I will add "gce_x86" for FTL to the list of supported emulators in 1.0.1. The reason why the test was filtered in 1.0.1 is because of a bug in sharding filter which was fixed in 1.0.1-alpha-1
Description
Version used: 3.0.0-alpha-1
What steps will reproduce the problem?
1. Create a test that requires a physical device
2. Annotate the test with @RequiresDevice
3. Run the test on a virtual device on Firebase Test Lab
How are you running your tests (via Android Studio, Gradle, adb, etc.)?
Build APK ./gradlew assembleDebugAndroidTest then invoking gcloud by the command line.
What is the expected output? What do you see instead?
Expected: the test is skipped.
Actual: The test is executed. Note that this works correctly on an AVD running locally; it just doesn't correctly detect the FTL virtual device as being virtual.
This appears to be a regression in alpha-1.