TabStripTest#testScrollingStripStackerScrollsToSelectedTab and #testScrollingStripStackerTabOffsets is flaky on tablets |
|||||||
Issue descriptionFirst failed build: https://uberchromegw.corp.google.com/i/chromium.android/builders/KitKat%20Tablet%20Tester/builds/4939 I see some green builds after this Cl, but mostly red. So, maybe this test became flaky. https://uberchromegw.corp.google.com/i/chromium.android/builders/KitKat%20Tablet%20Tester Stack trace: ******************************************************************************** C 2387.312s Main Detailed Logs C 2387.312s Main ******************************************************************************** C 2387.314s Main [FAIL] org.chromium.chrome.browser.compositor.overlays.strip.TabStripTest#testScrollingStripStackerScrollsToSelectedTab: C 2387.314s Main junit.framework.AssertionFailedError: ChromeTab should be visible. expected:<true> but was:<false> C 2387.314s Main at org.chromium.chrome.browser.compositor.overlays.strip.TabStripTest.assertTabVisibility(TabStripTest.java:1045) C 2387.314s Main at org.chromium.chrome.browser.compositor.overlays.strip.TabStripTest.testScrollingStripStackerScrollsToSelectedTab(TabStripTest.java:660) C 2387.314s Main at java.lang.reflect.Method.invokeNative(Native Method) C 2387.314s Main at android.test.InstrumentationTestCase.runMethod(InstrumentationTestCase.java:214) C 2387.314s Main at android.test.InstrumentationTestCase.runTest(InstrumentationTestCase.java:199) C 2387.314s Main at android.test.ActivityInstrumentationTestCase2.runTest(ActivityInstrumentationTestCase2.java:192) C 2387.314s Main at org.chromium.chrome.test.ChromeActivityTestCaseBase.runTest(ChromeActivityTestCaseBase.java:765) C 2387.314s Main at org.chromium.base.test.BaseTestResult.runParameterized(BaseTestResult.java:161) C 2387.314s Main at org.chromium.base.test.BaseTestResult.run(BaseTestResult.java:124) C 2387.314s Main at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:191) C 2387.314s Main at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:176) C 2387.314s Main at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:554) C 2387.314s Main at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1701) Suspected CL: Changed by sievers@chromium.org Changed at Tue 26 Jul 2016 17:04:13 Repository https://chromium.googlesource.com/chromium/src Project src Branch master Revision 3e5517a5b9a2c05bc1300539337236ccd969b2b2 Comments Android: Fix some tab placeholder/thumbnail readbacks There is a problem with readbacks when hiding tabs which seems to come from the SurfaceLayer being detach from the tree. I think this was a regression with https://codereview.chromium.org/1732323002/ which previously would be resilient to the actual RWHV's layer being detached. This caused the readback to only complete when you switch back to a tab and the layer gets reattached sometimes. Furthermore, it caused tabs to not have placeholders in the cache at all since TabContentManager has a kMaxReadbacks limit of 1, so the interrupted readback was preventing other ones also. The fix is to use the new Surface readback API which works regardless of the SurfaceLayer's attachment state and bypasses the UI compositor BUG= 574537 Review-Url: https://codereview.chromium.org/2189493002 Cr-Commit-Position: refs/heads/master@{#407980} Changed files content/browser/renderer_host/render_widget_host_view_android.cc This CL seems to change the Tab view
,
Jul 29 2016
estade@'s CL obviously not to blame, his code is not even compiled into Clank. I doubt it's mine, either.
,
Aug 4 2016
+ twellington TabStripTest#testScrollingStripStackerScrollsToSelectedTab is flakily failing on the L and M Tablet bots (this test is only run on tablets). Looks like you wrote the test so hoping you might know what is wrong. https://build.chromium.org/p/chromium.android/builders/Lollipop%20Tablet%20Tester https://build.chromium.org/p/chromium.android/builders/Marshmallow%20Tablet%20Tester
,
Aug 4 2016
At first pass through the list, nothing is jumping out as an obvious cause for the regression. Is the first failure an accurate regression range?
,
Aug 9 2016
,
Aug 9 2016
As noted in #3, this is happening on K, L, and M tablets: https://test-results.appspot.com/dashboards/flakiness_dashboard.html#tests=org.chromium.chrome.browser.compositor.overlays.strip.TabStripTest%23testScrollingStripStackerScrollsToSelectedTab&testType=chrome_public_test_apk
,
Aug 9 2016
This was marked as disabled in the duped issue
,
Aug 10 2016
I'm not sure exactly what changed to start causing this failure, but the tab actually is visible, the assert() is just happening a bit too soon (see video for verification). Patch in-flight to fix it: https://codereview.chromium.org/2236603002
,
Aug 11 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/812c3d355853b0f9be40f1fbde02604a0a1410d7 commit 812c3d355853b0f9be40f1fbde02604a0a1410d7 Author: twellington <twellington@chromium.org> Date: Thu Aug 11 03:05:59 2016 Reenable TabStripTest#testScrollingStripStackerScrollsToSelectedTab() Poll for the selected tab to be visible rather than asserting after waiting for idle sync. The application may be idle before the tab is fully visible. BUG= 632843 Review-Url: https://codereview.chromium.org/2236603002 Cr-Commit-Position: refs/heads/master@{#411243} [modify] https://crrev.com/812c3d355853b0f9be40f1fbde02604a0a1410d7/chrome/android/javatests/src/org/chromium/chrome/browser/compositor/overlays/strip/TabStripTest.java
,
Aug 11 2016
#testScrollingStripStackerScrollsToSelectedTab should be good now When looking into this, I noticed #testScrollingStripStackerTabOffsets has been flaky as well. It looks like with my change in #9 its failed consistently for the last 3 builds on the Lollipop Tablet Tester. I will be working on fixing these tests up more tomorrow. https://test-results.appspot.com/dashboards/flakiness_dashboard.html#testType=chrome_public_test_apk&tests=testScrollingStripStackerTabOffsets%20
,
Aug 11 2016
I'm going to disable #testScrollingStripStackerTabOffsets for now to try to get the bots green. Sample failures: https://uberchromegw.corp.google.com/i/chromium.android/builders/Lollipop%20Tablet%20Tester/builds/4357 C 757.341s Main [FAIL] org.chromium.chrome.browser.compositor.overlays.strip.TabStripTest#testScrollingStripStackerTabOffsets: C 757.341s Main junit.framework.AssertionFailedError: Incorrect draw position for tab. expected:<0.0> but was:<-308.0> C 757.341s Main at org.chromium.chrome.browser.compositor.overlays.strip.TabStripTest.assertTabDrawX(TabStripTest.java:1082) C 757.341s Main at org.chromium.chrome.browser.compositor.overlays.strip.TabStripTest.testScrollingStripStackerTabOffsets(TabStripTest.java:732) C 757.341s Main at android.test.InstrumentationTestCase.runMethod(InstrumentationTestCase.java:214) C 757.341s Main at android.test.InstrumentationTestCase.runTest(InstrumentationTestCase.java:199) C 757.341s Main at android.test.ActivityInstrumentationTestCase2.runTest(ActivityInstrumentationTestCase2.java:192) C 757.341s Main at org.chromium.chrome.test.ChromeActivityTestCaseBase.runTest(ChromeActivityTestCaseBase.java:765) C 757.341s Main at org.chromium.base.test.BaseTestResult.runParameterized(BaseTestResult.java:161) C 757.341s Main at org.chromium.base.test.BaseTestResult.run(BaseTestResult.java:124) C 757.341s Main at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:191) C 757.341s Main at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:176) C 757.342s Main at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:555) C 757.342s Main at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1853) https://uberchromegw.corp.google.com/i/chromium.android/builders/Lollipop%20Tablet%20Tester/builds/4358 C 886.193s Main [FAIL] org.chromium.chrome.browser.compositor.overlays.strip.TabStripTest#testScrollingStripStackerTabOffsets: C 886.194s Main junit.framework.AssertionFailedError: ChromeTab should not be visible. expected:<false> but was:<true> C 886.194s Main at org.chromium.chrome.browser.compositor.overlays.strip.TabStripTest.assertTabVisibility(TabStripTest.java:1072) C 886.194s Main at org.chromium.chrome.browser.compositor.overlays.strip.TabStripTest.assertTabVisibilityForScrollingStripStacker(TabStripTest.java:1053) C 886.194s Main at org.chromium.chrome.browser.compositor.overlays.strip.TabStripTest.compareTabViewWithModel(TabStripTest.java:876) C 886.194s Main at org.chromium.chrome.browser.compositor.overlays.strip.TabStripTest.compareTabStripWithModel(TabStripTest.java:915) C 886.194s Main at org.chromium.chrome.browser.compositor.overlays.strip.TabStripTest.compareAllTabStripsWithModel(TabStripTest.java:925) C 886.194s Main at org.chromium.chrome.browser.compositor.overlays.strip.TabStripTest.assertSetTabStripScrollOffset(TabStripTest.java:984) C 886.194s Main at org.chromium.chrome.browser.compositor.overlays.strip.TabStripTest.testScrollingStripStackerTabOffsets(TabStripTest.java:736) C 886.194s Main at android.test.InstrumentationTestCase.runMethod(InstrumentationTestCase.java:214) C 886.194s Main at android.test.InstrumentationTestCase.runTest(InstrumentationTestCase.java:199) C 886.194s Main at android.test.ActivityInstrumentationTestCase2.runTest(ActivityInstrumentationTestCase2.java:192) C 886.194s Main at org.chromium.chrome.test.ChromeActivityTestCaseBase.runTest(ChromeActivityTestCaseBase.java:765) C 886.194s Main at org.chromium.base.test.BaseTestResult.runParameterized(BaseTestResult.java:161) C 886.194s Main at org.chromium.base.test.BaseTestResult.run(BaseTestResult.java:124) C 886.194s Main at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:191) C 886.194s Main at android.test.AndroidTestRunner.runTest(AndroidTestRunner.java:176) C 886.195s Main at android.test.InstrumentationTestRunner.onStart(InstrumentationTestRunner.java:555) C 886.195s Main at android.app.Instrumentation$InstrumentationThread.run(Instrumentation.java:1853)
,
Aug 11 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/bba868bfa20e316f45052b03c140371bd65d78ed commit bba868bfa20e316f45052b03c140371bd65d78ed Author: twellington <twellington@chromium.org> Date: Thu Aug 11 08:50:07 2016 Disable TabStripTest#testScrollingStripStackerTabOffsets Failing on Lollipop Tablet Tester BUG= 632843 TBR=changwan@chromium.org Review-Url: https://codereview.chromium.org/2234313002 Cr-Commit-Position: refs/heads/master@{#411292} [modify] https://crrev.com/bba868bfa20e316f45052b03c140371bd65d78ed/chrome/android/javatests/src/org/chromium/chrome/browser/compositor/overlays/strip/TabStripTest.java
,
Aug 12 2016
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/af4de58dba85c0556a4ca0716c8154e8dbfcfde7 commit af4de58dba85c0556a4ca0716c8154e8dbfcfde7 Author: twellington <twellington@chromium.org> Date: Fri Aug 12 18:49:35 2016 Use CallbackHelpers in TabStripTest Also, run more methods that obtain StripLayoutTab state on the UI thread rather than the test thread and disable animations for testScrollingStripStackerTabOffsets. BUG= 632843 Review-Url: https://codereview.chromium.org/2238083003 Cr-Commit-Position: refs/heads/master@{#411722} [modify] https://crrev.com/af4de58dba85c0556a4ca0716c8154e8dbfcfde7/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutHelper.java [modify] https://crrev.com/af4de58dba85c0556a4ca0716c8154e8dbfcfde7/chrome/android/java/src/org/chromium/chrome/browser/compositor/overlays/strip/StripLayoutTab.java [modify] https://crrev.com/af4de58dba85c0556a4ca0716c8154e8dbfcfde7/chrome/android/javatests/src/org/chromium/chrome/browser/compositor/overlays/strip/TabStripTest.java
,
Aug 12 2016
|
|||||||
►
Sign in to add a comment |
|||||||
Comment 1 by ssid@chromium.org
, Jul 29 2016Summary: Android KitKat Tablet Tester: TabStripTest#testScrollingStripStackerScrollsToSelectedTab is failing (was: KitKat Tablet Tester: TabStripTest#testScrollingStripStackerScrollsToSelectedTab is failing)