~/talk

Browser automation/testing with BiDi and minimal dependencies

Talkat DevConf.CZ 2025 · 2025-06-12..06-14· [web-platform, testing]
links:none on file
slides:none on file

Demonstrates that WebDriver BiDi is a W3C draft streaming JSON protocol already implemented in Firefox and Chromium and usable with only the installed browser plus websocat or python-aiohttp no npm or Selenium required. Shows a 600‑byte counter page, gets the browser WebSocket URL, subscribes to log events, navigates, locates a button with a CSS selector, performs pointer move/down/up to click, and uses script evaluate to read the span. Supplies toy shell scripts and a ~500‑line Python library used in Cockpit and the demo works on both Chromium and Firefox.

AI-written summary · about

  1. 0:00Introduction
  2. 1:23WebDriver limits
  3. 3:10BiDi as WebDriver extension
  4. 4:13Setting up the WebSocket connection
  5. 5:37Browser event subscriptions
  6. 6:59Shell script automation
  7. 8:45Page navigation and interaction
  8. 10:29Test validation with JS
  9. 11:11Cross-browser with Firefox
  10. 11:53Python automation library
  11. 13:25Q&A
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.