Hi everyone,
We have published a new, comprehensive guide: "Local Prototyping and Testing Chromium Web Platform Features with Web Platform Tests."
This document can be useful if you want to create a local prototype of a new web feature and test it using WPT before proposing any changes in WebDriver BiDi or in Chromium public repositories. Testing a single feature often requires coordinated changes across the BiDi specification, Chromium's BiDi implementation, and the underlying Chrome DevTools Protocol (CDP). This guide details how you can prototype and validate this entire stack on your local machine before submitting any changes for review.
It provides a step-by-step process for simultaneously testing all the moving parts, showing you how to:
Prototype and build CDP changes: Implement the necessary backend support in the Chrome DevTools Protocol within your local Chromium build.
Test proposed WebDriver BiDi spec changes: Write tests against your proposed changes to the WebDriver BiDi specification.
Implement the Chromium-BiDi logic: Code the logic in Chromium's BiDi module that connects the new BiDi feature to your underlying CDP changes.
Run end-to-end WPTs: Execute Web Platform Tests that use your local BiDi implementation, which in turn relies on your local CDP changes, providing complete validation of the entire stack.
This workflow is essential for ensuring all dependent components work together correctly, significantly streamlining the development and multi-stage review process for WebDriver BiDi contributors.
You can find the new guide here: https://chromium.googlesource.com/chromium/src/+/main/docs/testing/local_prototyping_guide.md
This local prototyping process is specifically intended for developers working on new features that must first be implemented in CDP to be testable in WPT via WebDriver BiDi. We encourage those contributors to try out this workflow to validate their changes end-to-end.
Thanks,
— Maksim Sadym, on behalf of the Browser Automation team