Skip to content

Stabilize CI browser tests on macOS and Windows runners - #223

Merged
lordjabez merged 1 commit into
masterfrom
ci-stability
Oct 2, 2026
Merged

lordjabez merged 1 commit into
masterfrom
ci-stability

Conversation

@lordjabez

Copy link
Copy Markdown
Collaborator

Gets the full CI matrix green. Root causes were found with a throwaway debug workflow on a scratch branch, running launch probes on the real runners.

  • macOS: the runner image's /usr/local/bin/chromedriver (152) is on PATH and Selenium Manager prefers it over a matching driver, so Chrome 154 launches failed with "ChromeDriver only supports Chrome version 152". Some of those tests were being silently skipped rather than failed. Fixed with SE_SKIP_DRIVER_IN_PATH: true (25/25 launches OK on both resolutions afterwards).
  • Windows, lowest-direct: selenium 4.32's Selenium Manager selects Chrome for Testing 154.0.8037.92, and with its sandbox on, driver.get() sometimes returns while the page stays on data:, (21/30 OK). With --no-sandbox it was 30/30. The conftest drivers already passed that flag. Now every Requestium-launched Chrome in the tests gets it too, through a new own_chrome_session() helper. The library itself stays sandboxed.
  • Ubuntu: one timing assertion had only 0.8s of slack and missed by 20ms. The element now appears at 3s and the bound is 2.5s.

🤖 Generated with Claude Code

https://claude.ai/code/session_01446x2ZH4bs3pKQ6mV84K1a

- SE_SKIP_DRIVER_IN_PATH: runner images ship a chromedriver on PATH
  that lags the installed Chrome, so Selenium Manager picked a
  mismatched driver ('ChromeDriver only supports Chrome version 152')
  and macOS Chrome tests failed or were silently skipped
- Pass --no-sandbox/--disable-dev-shm-usage to every Requestium-launched
  Chrome in tests via own_chrome_session(), as the conftest drivers
  already did. On Windows runners, sandboxed Chrome for Testing
  (selected by selenium 4.32's Selenium Manager) silently drops
  navigations: measured 21/30 OK sandboxed vs 30/30 with --no-sandbox
- Widen test_session_default_timeout_is_used's margin; it missed by
  20ms on a slow Ubuntu runner

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01446x2ZH4bs3pKQ6mV84K1a
@github-actions

github-actions Bot commented Oct 1, 2026

Copy link
Copy Markdown

Coverage report

Click to see where and how coverage changed

FileStatementsMissingCoverageCoverage
(new stmts)
Lines missing
  requestium
  requestium_mixin.py
  requestium_response.py
  requestium_session.py
Project Total  

This report was generated by python-coverage-comment-action

@lordjabez lordjabez mentioned this pull request Oct 1, 2026
@lordjabez
lordjabez merged commit 400a056 into master Oct 2, 2026
41 checks passed
@lordjabez
lordjabez deleted the ci-stability branch October 2, 2026 16:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant