Improving interop with web-platform-tests
This is not inevitable!
wpt.fyi
Running all tests on 4 browsers daily.
Will be more browsers, more often.
wpt.fyi is URL:
wpt.fyi
Will soon change the default view to focus on interoperability.
Mockup:
Test automation now much easier��web-platform-tests.org/writing-tests/testdriver.html
Test automation decision tree
Part of the
standards process
Asking for tests for normative changes
Accelerometer, Ambient Light Sensor, Battery Status API, Beacon, mature CSS specs, Clipboard API and events, Compatibility, Console, Content Security Policy, Cooperative Scheduling of Background Tasks, DOM Parsing and Serialization, DOM, Encoding, Feature Policy, Fetch, File API, File and Directory Entries API, Fullscreen API, Gamepad, Generic Sensor API, Geometry Interfaces, Gyroscope, HTML Media Capture, HTML,High Resolution Time, Indexed Database API, Intersection Observer, Keyboard Lock, Long Tasks API, MIME Sniffing, Magnetometer, Media Queries, Navigation Timing, Notifications API, Orientation Sensor, Page Visibility, Paint Timing, Payment Request API, Performance Timeline, Pointer Events, Pointer Lock, Preload, Presentation API, Quirks Mode, Resize Observer, Resource Hints, Resource Timing, SVG, Selectors, Server Timing, Service Workers, Static Range, Storage, Streams, Touch Events, UI Events, URL, User Timing, Vibration API, Web Animations, Web Audio API, Web MIDI API, WebRTC, WebUSB API, WebVR, WebVTT, XMLHttpRequest
100+ specs are doing this
Pointer Events�+ HTML
WHATWG
CSSWG
Lots!
Web Performance WG
How to do it: just copy+paste this
From Gamepad’s CONTRIBUTING.md:
For normative changes, a corresponding web-platform-tests PR is highly appreciated. Typically, both PRs will be merged at the same time. Note that a test change that contradicts the spec should not be merged before the corresponding spec change. If testing is not practical, please explain why and if appropriate file a web-platform-tests issue to follow up later. Add the type:untestable or type:missing-coverage label as appropriate.
Next 3 steps of the master plan
Part of the
implementer workflow
2-way sync
web-platform-tests is a separate repository on GitHub. 2-way sync means:
2-way sync
Gecko has had it for a long time
Chromium:
EdgeHTML and WebKit working on it
Come to our
breakout session!
Resources