-
- Notifications
You must be signed in to change notification settings - Fork 8.6k
New headless #11099
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
New headless #11099
Conversation
Codecov ReportBase: 52.31% // Head: 52.31% // Decreases project coverage by
Additional details and impacted files@@ Coverage Diff @@ ## trunk #11099 +/- ## ========================================== - Coverage 52.31% 52.31% -0.01% ========================================== Files 82 82 Lines 5503 5505 +2 Branches 198 199 +1 ========================================== + Hits 2879 2880 +1 Misses 2426 2426 - Partials 198 199 +1
Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here. ☔ View full report at Codecov. |
| Hi @titusfortner , Looks like there is an issue with https://www.w3.org/TR/webdriver/#dfn-print-page when set The test runs in headless mode but still fails with error Is this an issue with chromedriver ? Thanks, |
| @harsha509 yeah, looks like that functionality only works with "old" headless mode, so that's a confounding factor for our decision. I'm also not sure why JS is the only language testing it. :) Was going to look into it more. |
It's because headless isn't being passed in the new way in the |
| It was decided that instead of changing this method that we would mark it as deprecated and advertise using the new mode as the recommended way to run in headless. |
d38d8b2 to 06e5bff Compare 06e5bff to dabf5e8 Compare | SonarCloud Quality Gate failed.
|
| Decided not to do this one, tracking with the new Issue |
| Why? I thought we were going to eventually merge this? |
| This PR is wrong. Created new issue to track actual requirement |









Most Selenium languages have implemented convenience methods for Headless mode in Chrome & Firefox.
Currently implemented:
The Chrome Headless mode we've set is not the production browser, and has many limitations (including not being able to load extensions).
Thanks to @mdmintz I learned that Chrome implemented a new Headless mode that is the full production browser:
https://chromium.googlesource.com/chromium/src/+/833543a511a970f44fb074b9f30c6b6268e0be71
It's been available since Chrome 94, but this change should be backwards compatible since it picks up anything it doesn't recognize (e.g.,
--headless=xx) as just--headless.There may be slight performance benefit to using the old mode of headless (because it strips out functionality), but I believe the new mode more accurately represents what Selenium should encourage. If we are going to maintain a convenience feature (tbh, I would also be ok with deprecating/removing all of these), then I believe this new mode is the correct one.
I'm not adding Unsetters to Ruby or JS, or Getters to non-Python because I just don't see them as that important. I am implementing Headless in .NET (both Chrome & Firefox) to match Java implementation.
I've verified that the new headless mode works on a Linux box without a GUI / xvfb. I have not evaluated performance.
Which do you prefer: