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

Issue 768420 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Nov 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Android
Pri: 2
Type: Bug
Proj-XR
Proj-XR-VR



Sign in to add a comment

VR browser forward button very rarely reported as enabled when it shouldn't

Project Member Reported by bsheedy@chromium.org, Sep 25 2017

Issue description

Very rarely, VrShellNavigationTest#testNavigationButtons is failing due to the forward button supposedly being enabled when it shouldn't. There doesn't seem to be any way to reliably reproduce this, other than running the test on swarming dozens of times.

Sample failure is at https://chromium-swarm.appspot.com/task?id=38c9b94081358610&refresh=10&show_raw=1, with the relevant output below:

C  350.479s Main  [FAIL] org.chromium.chrome.browser.vr_shell.VrShellNavigationTest#testNavigationButtons:
C  350.479s Main  java.lang.AssertionError: Forward button isn't disabled.
C  350.479s Main  	at org.junit.Assert.fail(Assert.java:88)
C  350.479s Main  	at org.junit.Assert.assertTrue(Assert.java:41)
C  350.479s Main  	at org.junit.Assert.assertFalse(Assert.java:64)
C  350.479s Main  	at org.chromium.chrome.browser.vr_shell.VrShellNavigationTest.testNavigationButtons(VrShellNavigationTest.java:333)
C  350.479s Main  	at java.lang.reflect.Method.invoke(Native Method)
C  350.479s Main  	at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
C  350.479s Main  	at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
C  350.479s Main  	at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:52)
C  350.479s Main  	at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
C  350.479s Main  	at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
C  350.479s Main  	at org.chromium.base.test.ScreenshotOnFailureStatement.evaluate(ScreenshotOnFailureStatement.java:37)
C  350.479s Main  	at org.chromium.chrome.browser.vr_shell.rules.ChromeTabbedActivityVrTestRule$1.evaluate(ChromeTabbedActivityVrTestRule.java:25)
C  350.479s Main  	at org.chromium.chrome.test.ChromeActivityTestRule$1.evaluate(ChromeActivityTestRule.java:65)
C  350.479s Main  	at android.support.test.internal.statement.UiThreadStatement.evaluate(UiThreadStatement.java:55)
C  350.479s Main  	at android.support.test.rule.ActivityTestRule$ActivityStatement.evaluate(ActivityTestRule.java:270)
C  350.479s Main  	at org.junit.rules.RunRules.evaluate(RunRules.java:20)
C  350.479s Main  	at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
C  350.479s Main  	at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:78)
C  350.479s Main  	at org.chromium.base.test.BaseJUnit4ClassRunner.runChild(BaseJUnit4ClassRunner.java:175)
C  350.479s Main  	at org.chromium.base.test.BaseJUnit4ClassRunner.runChild(BaseJUnit4ClassRunner.java:40)
C  350.479s Main  	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
C  350.479s Main  	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
C  350.479s Main  	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
C  350.479s Main  	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
C  350.479s Main  	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
C  350.479s Main  	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
C  350.479s Main  	at org.chromium.base.test.BaseJUnit4ClassRunner.run(BaseJUnit4ClassRunner.java:164)
C  350.480s Main  	at org.junit.runners.Suite.runChild(Suite.java:128)
C  350.480s Main  	at org.junit.runners.Suite.runChild(Suite.java:27)
C  350.480s Main  	at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
C  350.480s Main  	at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
C  350.480s Main  	at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
C  350.480s Main  	at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
C  350.480s Main  	at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
C  350.480s Main  	at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
C  350.480s Main  	at org.junit.runner.JUnitCore.run(JUnitCore.java:137)
C  350.480s Main  	at org.junit.runner.JUnitCore.run(JUnitCore.java:115)
C  350.480s Main  	at android.support.test.internal.runner.TestExecutor.execute(TestExecutor.java:59)
C  350.480s Main  	at android.support.test.runner.AndroidJUnitRunner.onStart(AndroidJUnitRunner.java:262)
C  350.480s Main  	at org.chromium.base.test.BaseChromiumAndroidJUnitRunner.onStart(BaseChromiumAndroidJUnitRunner.java:98)
C  350.480s Main  	at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1932)
 
Components: -Internals>VR UI>Browser>VR
Labels: -Pri-3 Pri-2
This seems to have become more frequent, and is showing up as a semi-frequent flake now, so bumping the priority.
Cc: vollick@chromium.org
Project Member

Comment 7 by bugdroid1@chromium.org, Nov 20 2017

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

commit 1ec1c38ac7c5f92552191be4826757c5537e41b1
Author: bsheedy <bsheedy@chromium.org>
Date: Mon Nov 20 22:44:29 2017

Fix VR Browser navigation button test flakiness

Adds waitForTabPageLoaded calls after using the navigation buttons in
the VR Browser. This should hopefully fix the test flakiness that's
been around for a while, which seems to be caused by not properly
waiting until the page has finished loading to use asserts.

Bug:  768420 
Change-Id: Idecfbc88640cc5354d3c8d12208216530ce83aed
Reviewed-on: https://chromium-review.googlesource.com/780203
Reviewed-by: Michael Thiessen <mthiesse@chromium.org>
Commit-Queue: Brian Sheedy <bsheedy@chromium.org>
Cr-Commit-Position: refs/heads/master@{#517959}
[modify] https://crrev.com/1ec1c38ac7c5f92552191be4826757c5537e41b1/chrome/android/javatests/src/org/chromium/chrome/browser/vr_shell/VrShellNavigationTest.java

Owner: bsheedy@chromium.org
Status: Started (was: Available)
This fixed?
Status: Fixed (was: Started)
I haven't seen this since the patch went in, so I think so? I'll re-open if that turns out to not be the case.
Labels: M-64 Test-Complete
Labels: VR-Caught-By-Test
Labels: -VR-Caught-By-Test XR-Caught-By-Test

Sign in to add a comment