-
-
Notifications
You must be signed in to change notification settings - Fork 3.4k
wpt: Use Webdriver for all WPT runs #41511
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
|
🔨 Triggering try run (#20491626788) for Linux (WPT) |
|
I took web-platform-tests/wpt@7496300 as inspiration as well as the other browser configurations to know what's the minimal set of configuration to make things work. |
|
🤖 Opened new upstream WPT pull request (web-platform-tests/wpt#56920) with upstreamable changes. |
All other browsers use a single configuration for their browser invocations on WPT. Servo historically had two: servo and servodriver. Now that we run WPT on Servo GitHub CI with Webdriver using the servodriver, we can align our configuration with theirs. To do so, we drop most of the custom implementation. The existing WPT configuration for the Servo binary duplicates some work in the executor that the browser configuration does instead. Therefore, we now configure preferences and such in the browser configuration rather than the executor. We also use the existing implementation for the servodriver configuration for the servo browser. The reason that we don't switch to servodriver always is that on wpt.fyi we use the Servo product and that's the one that also daily runs. Since we don't run servodriver externally and it isn't intended either, I think it's better to configure Servo probably. This does mean that in a follow-up PR we can remove the full servodriver WPT configuration. However, to make sure the existing setup works, we do that first and delete the servodriver WPT configuration once we are confident everything is stable. All in all, this ensures that both on local, Servo GitHub CI and on wpt.fyi we all use the exact same configuration. I tested this locally by running the following test: ``` ./mach test-wpt tests/wpt/tests/css/css-overflow/scrollbar-gutter-dynamic-004.html ``` This does times out with the servo binary and works with the servodriver binary. Fixes servo#40751 Signed-off-by: Tim van der Lippe <[email protected]>
07fec85 to
00e2eae
Compare
|
🔨 Triggering try run (#20491789965) for Linux (WPT) |
|
📝 Transplanted new upstreamable changes to existing upstream WPT pull request (web-platform-tests/wpt#56920). |
|
As someone who regularly uses the servo product to make stepping through tests in debugger easier, I'm nervous about removing that configuration. |
|
Test results for linux-wpt from try job (#20491789965): Flaky unexpected result (36)
Stable unexpected results that are known to be intermittent (26)
|
|
✨ Try run (#20491789965) succeeded. |
All other browsers use a single configuration for their browser invocations on WPT. Servo historically had two: servo and servodriver. Now that we run WPT on Servo GitHub CI with Webdriver using the servodriver, we can align our configuration with theirs.
To do so, we drop most of the custom implementation. The existing WPT configuration for the Servo binary duplicates some work in the executor that the browser configuration does instead. Therefore, we now configure preferences and such in the browser configuration rather than the executor.
We also use the existing implementation for the servodriver configuration for the servo browser. The reason that we don't switch to servodriver always is that on wpt.fyi we use the Servo product and that's the one that also daily runs. Since we don't run servodriver externally and it isn't intended either, I think it's better to configure Servo probably.
This does mean that in a follow-up PR we can remove the full servodriver WPT configuration. However, to make sure the existing setup works, we do that first and delete the servodriver WPT configuration once we are confident everything is stable.
All in all, this ensures that both on local, Servo GitHub CI and on wpt.fyi we all use the exact same configuration. I tested this locally by running the following test:
This does times out with the servo binary and works with the servodriver binary.
Fixes #40751