WT-1273 remove Selenium tests#17234
Conversation
There was a problem hiding this comment.
Pull request overview
This PR removes the legacy Selenium/PyPOM-based functional test framework from Bedrock (page objects, Selenium-specific fixtures, and CI/grid wiring) and simplifies the integration-test workflows to run only the remaining HTTP-based pytest suites (plus Playwright separately).
Note: This review was performed following the repository’s custom Copilot instructions (including checking AGENTS.md guidance and verifying repository-wide references via search).
Changes:
- Deleted Selenium/PyPOM page objects and the one remaining Selenium navigation test.
- Removed Selenium-related pytest fixtures/markers and pruned Selenium/PyPOM dependencies from dev requirements.
- Simplified integration test scripts and GitHub Actions workflows by removing Selenium Grid / SauceLabs configuration.
Reviewed changes
Copilot reviewed 17 out of 22 changed files in this pull request and generated 1 comment.
Show a summary per file
| File | Description |
|---|---|
| tests/pages/regions/send_to_device.py | Deletes Selenium region object. |
| tests/pages/regions/modal.py | Deletes Selenium modal region objects. |
| tests/pages/regions/menu_list.py | Deletes Selenium region object. |
| tests/pages/regions/download_button.py | Deletes Selenium region object. |
| tests/pages/regions/init.py | Removes package file (Selenium pages). |
| tests/pages/home.py | Deletes Selenium home page object. |
| tests/pages/base.py | Deletes Selenium/PyPOM base page + navigation region. |
| tests/pages/init.py | Removes PyPOM compatibility shim and monkeypatches. |
| tests/functional/test_navigation.py | Removes Selenium-based navigation functional test. |
| tests/functional/conftest.py | Removes Selenium/driver capability fixtures; keeps HTTP parametrization helpers. |
| setup.cfg | Removes Selenium-era pytest config and trims marker declarations. |
| requirements/dev.txt | Removes Selenium/PyPOM/pytest-selenium stack from the locked dev requirements. |
| requirements/dev.in | Removes Selenium/PyPOM/pytest-selenium inputs; adds explicit pytest-base-url. |
| bin/run-integration-tests.sh | Deletes older integration test runner script (superseded by bin/integration_tests/...). |
| bin/integration_tests/run_integration_tests.sh | Simplifies runner by removing SauceLabs/Remote/Selenium CLI flags. |
| bin/integration_tests/functional_tests.sh | Removes Selenium Grid bring-up and Selenium-related env wiring. |
| bin/integration_tests/docker_compose_for_integration_tests.yml | Removes Selenium Grid docker compose definition. |
| bin/integration_tests/cleanup_after_functional_tests.sh | Removes Selenium Grid teardown logic. |
| .github/workflows/integration_tests.yml | Removes SauceLabs/IE matrix; runs only headless-marked pytest + Playwright job. |
| .github/workflows/download_tests.yml | Drops unused Selenium env vars for download tests workflow. |
| .github/workflows/cdn_tests.yml | Drops unused Selenium env vars for CDN tests workflow. |
maureenlholland
left a comment
There was a problem hiding this comment.
r+wc => let's hold off on merge until we have a successful integration test run
The vendor-local folder looks like an unrelated change. Otherwise, all looks good to me.
|
Integration tests failure: https://github.com/mozilla/bedrock/actions/runs/27763378024/job/82143415537
|
|
The integration tests have passed: https://github.com/mozilla/bedrock/actions/runs/27839980565/job/82396622227. The playwright tests failures seem to be related to the VPN env discussed here: https://mozilla.slack.com/archives/C0960JM31PE/p1781721519443169 |
maureenlholland
left a comment
There was a problem hiding this comment.
r+ good to go! (just waiting for current deploy to finish before merge)
| pytest-cov==7.1.0 | ||
| pytest-datadir==1.8.0 | ||
| pytest-django==4.12.0 | ||
| pytest-html==4.2.0 # Provides the --html option used to generate the integration test report |
There was a problem hiding this comment.
nice, thanks for the comment!
|
@wen-2018 sorry I missed the merge window here 🤦♀️ this is good to merge once the requirements conflicts are fixed |

If this changeset needs to go into the FXC codebase, please add the
WMO and FXClabel.One-line summary
This PR removes Selenium tests from the codebase.
Significant changes and points to review
All Slelenium tests, docs, CI should be removed.
Issue / Bugzilla link
https://mozilla-hub.atlassian.net/browse/WT-1273
Testing