New issue
Advanced search Search tips

Issue 758751 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Mar 2018
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 1
Type: Bug



Sign in to add a comment

org.chromium.chrome.browser.firstrun.FirstRunIntegrationTest#testAbortFirstRun flaky

Project Member Reported by kbr@chromium.org, Aug 24 2017

Issue description

https://luci-milo.appspot.com/buildbot/tryserver.chromium.android/linux_android_rel_ng/370824

This tryjob failed for an unrelated CL https://chromium-review.googlesource.com/c/chromium/src/+/633848 . Here's the Swarming shard that failed:

https://chromium-swarm.appspot.com/task?id=382f0f1409606f10&refresh=10&show_raw=1

Log excerpt:

I  405.316s run_tests_on_device(07e40ae0d00af837)  detected failure in org.chromium.chrome.browser.firstrun.FirstRunIntegrationTest#testAbortFirstRun. raw output:
I  405.316s run_tests_on_device(07e40ae0d00af837)    INSTRUMENTATION_STATUS: numtests=1
I  405.316s run_tests_on_device(07e40ae0d00af837)    INSTRUMENTATION_STATUS: stream=
I  405.316s run_tests_on_device(07e40ae0d00af837)    org.chromium.chrome.browser.firstrun.FirstRunIntegrationTest:
I  405.316s run_tests_on_device(07e40ae0d00af837)    INSTRUMENTATION_STATUS: id=AndroidJUnitRunner
I  405.316s run_tests_on_device(07e40ae0d00af837)    INSTRUMENTATION_STATUS: test=testAbortFirstRun
I  405.316s run_tests_on_device(07e40ae0d00af837)    INSTRUMENTATION_STATUS: class=org.chromium.chrome.browser.firstrun.FirstRunIntegrationTest
I  405.316s run_tests_on_device(07e40ae0d00af837)    INSTRUMENTATION_STATUS: current=1
I  405.316s run_tests_on_device(07e40ae0d00af837)    INSTRUMENTATION_STATUS_CODE: 1
I  405.316s run_tests_on_device(07e40ae0d00af837)    INSTRUMENTATION_STATUS: numtests=1
I  405.316s run_tests_on_device(07e40ae0d00af837)    INSTRUMENTATION_STATUS: stream=
I  405.316s run_tests_on_device(07e40ae0d00af837)    Error in testAbortFirstRun(org.chromium.chrome.browser.firstrun.FirstRunIntegrationTest):
I  405.316s run_tests_on_device(07e40ae0d00af837)    java.lang.NullPointerException
I  405.316s run_tests_on_device(07e40ae0d00af837)    	at org.chromium.chrome.browser.firstrun.FirstRunIntegrationTest.testAbortFirstRun(FirstRunIntegrationTest.java:221)
I  405.316s run_tests_on_device(07e40ae0d00af837)    	at java.lang.reflect.Method.invokeNative(Native Method)
I  405.316s run_tests_on_device(07e40ae0d00af837)    	at java.lang.reflect.Method.invoke(Method.java:515)
I  405.316s run_tests_on_device(07e40ae0d00af837)    	at org.junit.runners.a.e.b(FrameworkMethod.java:50)
I  405.316s run_tests_on_device(07e40ae0d00af837)    	at org.junit.internal.runners.a.c.a(ReflectiveCallable.java:12)
I  405.316s run_tests_on_device(07e40ae0d00af837)    	at org.junit.runners.a.d.invokeExplosively(FrameworkMethod.java:52)
I  405.316s run_tests_on_device(07e40ae0d00af837)    	at org.junit.internal.runners.c.f.evaluate(InvokeMethod.java:17)
I  405.317s run_tests_on_device(07e40ae0d00af837)    	at org.junit.internal.runners.c.h.evaluate(RunBefores.java:26)
I  405.317s run_tests_on_device(07e40ae0d00af837)    	at org.chromium.base.test.ScreenshotOnFailureStatement.evaluate(ScreenshotOnFailureStatement.java:37)
I  405.317s run_tests_on_device(07e40ae0d00af837)    	at org.junit.internal.runners.c.g.evaluate(RunAfters.java:27)
I  405.317s run_tests_on_device(07e40ae0d00af837)    	at org.chromium.chrome.test.MultiActivityTestRule$1.evaluate(MultiActivityTestRule.java:48)
I  405.317s run_tests_on_device(07e40ae0d00af837)    	at org.junit.a.e.evaluate(RunRules.java:20)
I  405.317s run_tests_on_device(07e40ae0d00af837)    	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
I  405.317s run_tests_on_device(07e40ae0d00af837)    	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
I  405.317s run_tests_on_device(07e40ae0d00af837)    	at org.chromium.base.test.BaseJUnit4ClassRunner.runChild(BaseJUnit4ClassRunner.java:175)
I  405.317s run_tests_on_device(07e40ae0d00af837)    	at org.chromium.base.test.BaseJUnit4ClassRunner.runChild(BaseJUnit4ClassRunner.java:40)


Marking P1 because this is causing retrites, slowing down the commit queue.

 
Labels: android-fe-triaged
Owner: bsazonov@chromium.org
Status: Assigned (was: Untriaged)
Project Member

Comment 2 by bugdroid1@chromium.org, Mar 7 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f0f0ddd3eec4134ac5e1aa9443bdd5de608363c9

commit f0f0ddd3eec4134ac5e1aa9443bdd5de608363c9
Author: Boris Sazonov <bsazonov@chromium.org>
Date: Wed Mar 07 20:12:21 2018

[Android] Add explicit assertNotNull to FirstRunIntegrationTest

This CL adds explicit assertNotNull to check results of
Instrumentation.waitForMonitorWithTimeout calls. It also removes
removeMonitor calls, as waitForMonitorWithTimeout removes the monitor
from the monitor list once it has been hit.

Bug:  758751 
Change-Id: I217b6e78a2c91b9e2c2db1810c1a128195347e51
Reviewed-on: https://chromium-review.googlesource.com/952970
Reviewed-by: David Trainor <dtrainor@chromium.org>
Commit-Queue: Boris Sazonov <bsazonov@chromium.org>
Cr-Commit-Position: refs/heads/master@{#541546}
[modify] https://crrev.com/f0f0ddd3eec4134ac5e1aa9443bdd5de608363c9/chrome/android/javatests/src/org/chromium/chrome/browser/firstrun/FirstRunIntegrationTest.java

Project Member

Comment 3 by bugdroid1@chromium.org, Mar 13 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/20c9db4a847c28886dfb4b30db497578fc9c2856

commit 20c9db4a847c28886dfb4b30db497578fc9c2856
Author: Boris Sazonov <bsazonov@chromium.org>
Date: Tue Mar 13 19:20:15 2018

[Android] Fix ChromeLauncherActivity capturing in testAbortFirstRun

This CL fixes FirstRunIntegrationTest.testAbortFirstRun flakiness on
Android M+. testAbortFirstRun has been setting up ActivityMonitor for
ChromeLauncherActivity after starting FRE and checked that the activity
was finishing. But ChromeLauncherActivity is actually started before
FirstRunActivity, so waitForMonitorWithTimeout was returning null in
some runs on Android M+.
This CL captures ChromeLauncherActivity before starting FRE and checks
that both FirstRunActivity and ChromeLauncherActivity are finishing
after FRE is aborted.

Bug:  758751 
Change-Id: I03fe5b973faf02d63eb528e90ba1e6efb839f0f8
Reviewed-on: https://chromium-review.googlesource.com/956182
Reviewed-by: David Trainor <dtrainor@chromium.org>
Commit-Queue: Boris Sazonov <bsazonov@chromium.org>
Cr-Commit-Position: refs/heads/master@{#542878}
[modify] https://crrev.com/20c9db4a847c28886dfb4b30db497578fc9c2856/chrome/android/javatests/src/org/chromium/chrome/browser/firstrun/FirstRunIntegrationTest.java

Status: Fixed (was: Assigned)
There haven't been a single flake in this test after my CL has landed. Closing as fixed.

Comment 5 by kbr@chromium.org, Mar 21 2018

Thanks for de-flaking these tests!

Issue 808513 has been merged into this issue.

Sign in to add a comment