Closed Bug 1717627 Opened 5 years ago Closed 4 years ago

Move devtools tests to Linux WebRender

Categories

(Core :: Graphics: WebRender, task, P3)

Desktop
Linux
task

Tracking

()

RESOLVED FIXED
92 Branch
Tracking Status
firefox-esr91 --- fixed
firefox92 --- fixed

People

(Reporter: aosmond, Assigned: aosmond)

References

Details

Attachments

(2 files, 1 obsolete file)

No description provided.
Attachment #9228340 - Attachment description: Bug 1717627 - Move mochitest-devtools to run on Linux WebRender only. → Bug 1717627 - Move mochitest-devtools to run on WebRender only on Linux.

--- target_task_set@d009f0738a
+++ target_task_set@ao_ci_linux_devtools
+test-linux1804-64-asan-qr/opt-mochitest-devtools-chrome-e10s
-test-linux1804-64-asan/opt-mochitest-devtools-chrome-e10s
+test-linux1804-64-qr/debug-mochitest-devtools-chrome-e10s
+test-linux1804-64-qr/debug-mochitest-devtools-chrome-fis-e10s
+test-linux1804-64-qr/debug-mochitest-devtools-chrome-swr-e10s
+test-linux1804-64-qr/opt-mochitest-devtools-chrome-e10s
+test-linux1804-64-qr/opt-mochitest-devtools-chrome-fis-e10s
-test-linux1804-64/debug-mochitest-devtools-chrome-e10s
-test-linux1804-64/debug-mochitest-devtools-chrome-fis-e10s
-test-linux1804-64/opt-mochitest-devtools-chrome-a11y-checks-e10s
-test-linux1804-64/opt-mochitest-devtools-chrome-e10s
-test-linux1804-64/opt-mochitest-devtools-chrome-fis-e10s
+test-macosx1015-64-qr/debug-mochitest-devtools-chrome-e10s

mozilla-central

--- target_task_set@d009f0738a
+++ target_task_set@ao_ci_linux_devtools
+test-linux1804-64-asan-qr/opt-mochitest-devtools-chrome-e10s
-test-linux1804-64-asan/opt-mochitest-devtools-chrome-e10s
+test-linux1804-64-ccov-qr/opt-mochitest-devtools-chrome-e10s
-test-linux1804-64-ccov/opt-mochitest-devtools-chrome-e10s
+test-linux1804-64-qr/debug-mochitest-devtools-chrome-e10s
+test-linux1804-64-qr/debug-mochitest-devtools-chrome-fis-e10s
+test-linux1804-64-qr/debug-mochitest-devtools-chrome-swr-e10s
+test-linux1804-64-shippable-qr/opt-mochitest-devtools-chrome-e10s
+test-linux1804-64-shippable-qr/opt-mochitest-devtools-chrome-fis-e10s
-test-linux1804-64-shippable/opt-mochitest-devtools-chrome-a11y-checks-e10s
-test-linux1804-64-shippable/opt-mochitest-devtools-chrome-e10s
-test-linux1804-64-shippable/opt-mochitest-devtools-chrome-fis-e10s
-test-linux1804-64/debug-mochitest-devtools-chrome-e10s
-test-linux1804-64/debug-mochitest-devtools-chrome-fis-e10s
+test-macosx1015-64-qr/debug-mochitest-devtools-chrome-e10s

fixup

Attachment #9228340 - Attachment is obsolete: true
Pushed by aosmond@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/044115544bf6 Move Linux devtools tests to WebRender. r=ahal
Pushed by aosmond@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/74c20eb1d866 Part 2. Follow up test fuzzing. r=gfx-reviewers,jrmuizel
Pushed by apavel@mozilla.com: https://hg.mozilla.org/mozilla-central/rev/ee40230413eb Part 2. Follow up test fuzzing. r=gfx-reviewers,jrmuizel
Status: NEW → RESOLVED
Closed: 4 years ago
Resolution: --- → FIXED
Target Milestone: --- → 92 Branch
No longer regressions: 1721782

Comment on attachment 9231910 [details]
Bug 1717627 - Move Linux devtools tests to WebRender.

ESR Uplift Approval Request

  • If this is not a sec:{high,crit} bug, please state case for ESR consideration: adjusting testing to being on webrender only; this is 99% the case for 91, and the tests are only 60% migrated.
  • User impact if declined:
  • Fix Landed on Version: 92
  • Risk to taking this patch: Low
  • Why is the change risky/not risky? (and alternatives if risky):
  • String or UUID changes made by this patch:
Attachment #9231910 - Flags: approval-mozilla-esr91?
Attachment #9232456 - Flags: approval-mozilla-esr91?

Comment on attachment 9231910 [details]
Bug 1717627 - Move Linux devtools tests to WebRender.

Test-only change, approved for esr91.

Attachment #9231910 - Flags: approval-mozilla-esr91? → approval-mozilla-esr91+
Attachment #9232456 - Flags: approval-mozilla-esr91? → approval-mozilla-esr91+

Hi Andrew,

Sorry for the ni? on a closed bug, but since we moved DevTools tests on webrender, we have a lot of intermittent failures, and I'm not sure what is the best way to address them.

We had a first class of failures where we seemed to interact with the test page too quickly. After seeing one error related to a missing "presShell" available (see this comment), I started waiting for a presShell on top of the regular BrowserTestUtils.browserLoaded. It seemed to fix a whole class of DevTools intermittents. But it feels like this should either be addressed on platform side. Whatever BrowserTestUtils.browserLoaded currently waits for should probably still work with webrender without adding extra code?

And there are still intermittents which fail despite this "fix", for instance https://bugzilla.mozilla.org/show_bug.cgi?id=1721938 . We have a DOM element, in the DevTools toolbox. The element is visible, we can get its bounding client rect etc... But when we try to simulate a mousedown on it using nsDOMWindowUtils::SendMouseEvent, nothing happens. I checked the event listener was properly added before we simulate the event, I also added event listeners on the containing window, to check if we were missing the element for some reason...

My next step will be to start adding logs on the C++ side of the event simulation, but in case you have any idea of what might cause this, it might speed up the investigation.

Thanks!

Flags: needinfo?(aosmond)
See Also: → 1721938

Hm. Well, Linux + llvmpipe + HW-WR is much slower than Linux + Basic, Linux + gfx hw + HW-WR and Linux + Software WR. So for tests that are more timing sensitive, I would perhaps expect more failures.

For the browser-chrome tests, I had to switch it over to use SW-WR only on Linux because the timing was just way too painful. Perhaps devtools would benefit from a similar treatment? I think largely they will act the same from a devtools perspective (aside from timing) so I'm not that worried about loss of coverage.

You can see how I managed that in bug 1721945:

https://searchfox.org/mozilla-central/rev/7bafa9b9c2156018ec1d410194f9bf4b5b23e77f/taskcluster/ci/test/mochitest.yml#125

Flags: needinfo?(aosmond)

That would explain why devtools tests seemed the only ones impacted by that. Our tests are really similar to browser chrome mochitests, so yes I assume we should do the same. I will file bug for that, thanks!

I thought a bit more about this, and I don't really understand why this would be related to a performance problem. Helpers such as BrowserLoaded have been working fine on very slow platforms (debug, ccov etc...), so it seems odd that they start having timing issues on opt builds.

It rather feels that there is now a delay between the events we wait for in BrowserLoaded and the actual moment where you can interact with the page. I will file another bug for BrowserLoaded, hoping we can find a way to fix this helper and make it wait for the correct event.

You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: