New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 779017 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jan 2018
Cc:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 3
Type: ----

Blocking:
issue 592428



Sign in to add a comment

ContentViewCoreSelectionTest#testCursorPositionAfterHidingActionMode flakes on Lollipop Phone Tester

Project Member Reported by gsennton@chromium.org, Oct 27 2017

Issue description

Flakiness dashboard:

https://test-results.appspot.com/dashboards/flakiness_dashboard.html#testType=content_shell_test_apk&tests=testCursorPositionAfterHidingActionMode

The test failed e.g. in the following three builds:

https://build.chromium.org/p/chromium.android/builders/Lollipop%20Phone%20Tester/builds/16176
https://build.chromium.org/p/chromium.android/builders/Lollipop%20Phone%20Tester/builds/16171
https://build.chromium.org/p/chromium.android/builders/Lollipop%20Phone%20Tester/builds/16162

all of them with the same stack trace:

C  767.952s Main  [FAIL] org.chromium.content.browser.ContentViewCoreSelectionTest#testCursorPositionAfterHidingActionMode:
C  767.952s Main  java.lang.AssertionError: Exception occurred: Attempt to invoke interface method 'android.os.Handler org.chromium.content.browser.input.ChromiumBaseInputConnection.getHandler()' on a null object reference
C  767.952s Main  	at org.junit.Assert.fail(Assert.java:88)
C  767.952s Main  	at org.junit.Assert.assertTrue(Assert.java:41)
C  767.952s Main  	at org.chromium.content.browser.test.util.CriteriaHelper.pollInstrumentationThread(CriteriaHelper.java:93)
C  767.952s Main  	at org.chromium.content.browser.test.util.CriteriaHelper.pollInstrumentationThread(CriteriaHelper.java:108)
C  767.952s Main  	at org.chromium.content.browser.ContentViewCoreSelectionTest.testCursorPositionAfterHidingActionMode(ContentViewCoreSelectionTest.java:657)
C  767.952s Main  	at java.lang.reflect.Method.invoke(Native Method)
C  767.952s Main  	at java.lang.reflect.Method.invoke(Method.java:372)
C  767.952s Main  	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
C  767.952s Main  	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
C  767.952s Main  	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:52)
C  767.952s Main  	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
C  767.952s Main  	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
C  767.952s Main  	at org.chromium.base.test.ScreenshotOnFailureStatement.evaluate(ScreenshotOnFailureStatement.java:37)
C  767.952s Main  	at android.support.test.internal.statement.UiThreadStatement.evaluate(UiThreadStatement.java:55)
C  767.952s Main  	at android.support.test.rule.ActivityTestRule$ActivityStatement.evaluate(ActivityTestRule.java:270)
C  767.952s Main  	at org.junit.rules.RunRules.evaluate(RunRules.java:20)
C  767.952s Main  	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
C  767.952s Main  	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
C  767.952s Main  	at org.chromium.base.test.BaseJUnit4ClassRunner.runChild(BaseJUnit4ClassRunner.java:184)
C  767.952s Main  	at org.chromium.base.test.BaseJUnit4ClassRunner.runChild(BaseJUnit4ClassRunner.java:41)
C  767.952s Main  	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
C  767.952s Main  	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
C  767.952s Main  	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
C  767.952s Main  	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
C  767.952s Main  	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
C  767.952s Main  	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
C  767.952s Main  	at org.chromium.base.test.BaseJUnit4ClassRunner.run(BaseJUnit4ClassRunner.java:166)
C  767.952s Main  	at org.junit.runners.Suite.runChild(Suite.java:128)
C  767.952s Main  	at org.junit.runners.Suite.runChild(Suite.java:27)
C  767.952s Main  	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
C  767.952s Main  	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
C  767.952s Main  	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
C  767.952s Main  	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
C  767.952s Main  	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
C  767.952s Main  	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
C  767.952s Main  	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
C  767.952s Main  	at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
C  767.952s Main  	at android.support.test.internal.runner.TestExecutor.execute(TestExecutor.java:59)
C  767.952s Main  	at android.support.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:262)
C  767.952s Main  	at org.chromium.base.test.BaseChromiumAndroidJUnitRunner.onStart(BaseChromiumAndroidJUnitRunner.java:100)
C  767.952s Main  	at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1853)




 
Cc: changwan@chromium.org
changwan@, do you know why ImeAdapter#getInputConnectionForTest() would be returning null sometimes?

Comment 2 by ctzsm@chromium.org, Dec 8 2017

During my clank sheriff, I found out that Lollipop Phone Tester isn't very reliable comparing to other builders.

For this test, if we check flakiness dashboard, https://test-results.appspot.com/dashboards/flakiness_dashboard.html#showAllRuns=true&testType=content_shell_test_apk&tests=testCursorPositionAfterHidingActionMode, we will see it fails mostly on Lollipop Phone Tester.

The tracking crbug is  issue 793442 .
Cc: rlanday@chromium.org
cc'ing rlanday@ who investigated a similar issue
Status: Fixed (was: Assigned)
Checked the flakiness dashboard and don't see the flakiness anymore. Marking as fixed.

Sign in to add a comment