Releases: seleniumbase/SeleniumBase
Releases · seleniumbase/SeleniumBase
Refresh Python dependencies
Refresh Python dependencies
pytest-xdist==1.34.0;python_version<"3.5"
pytest-xdist==2.2.1;python_version>="3.5" and python_version<"3.6"
pytest-xdist==2.5.0;python_version>="3.6"
pytest-forked==1.3.0;python_version<"3.6"
pytest-forked==1.4.0;python_version>="3.6"
prompt-toolkit==3.0.24;python_version>="3.6.2"
Update options and dependencies
Update options and dependencies
- Update default Firefox options (disable the silent updater):
--options.set_preference("app.update.silent", False)
--options.set_preference("extensions.update.silent", False)
- Add the new
--proxy-bypass-list
option:
Designates the hosts, domains, and/or IP addresses
to bypass when using a proxy server with "--proxy".
Format: A ";"-separated string.
Example usage:
pytest
--proxy="username:password@servername:port"
--proxy-bypass-list="*.foo.com;github.com"
pytest
--proxy="servername:port"
--proxy-bypass-list="127.0.0.1:8080"
- Refresh Python dependencies:
--setuptools>=59.5.0;python_version>="3.6"
--charset-normalizer==2.0.9;python_version>="3.5"
Refactor wait_for_ready_state_complete() and related code
Refactor wait_for_ready_state_complete() and related code
- All part of determining the optimal trade-off between speed and reliability.
Fix visual tests that use the "sb" fixture (and more!)
Fix visual tests that use the "sb" fixture (and more!)
- Fix log path issue with visual tests that use the
sb
fixture. - Handle a possible edge case with page loads.
- Make sure highlighting isn't blocked by pop-up alerts.
- Set
WAIT_FOR_RSC_ON_CLICKS
to beFalse
by default.
-- Tests will be faster, but you may need to manually callself.accept_alert()
orself.dismiss_alert()
because previously, waiting for thereadyState
of the page to be "complete" might have dismissed alerts automatically due to an existing WebDriver "feature" where callingself.execute_script("")
automatically closes pop-up alerts.
Use the correct log path for tests that use the "sb" fixture
Use the correct log path for tests that use the "sb" fixture
- This resolves #1101
- (Only Windows tests using the
sb
fixture were affected by this bug.) - Also refresh Python dependencies:
--ipython==7.30.1;python_version>="3.7"
--rich==10.15.2;python_version>="3.6"
Expand visual testing logs with a side-by-side comparison
Expand visual testing logs with a side-by-side comparison
- Add a
baseline.png
image to the./latest_logs/
folder on visual diff failures. - Add a
baseline_diff.png
image to the./latest_logs/
folder on visual diff failures. - Add a
side_by_side.html
file showing both of the above images together on visual diff failures. - Give the new
side_by_side.html
file a nice favicon. - Make updates to the
visual_baseline/
folder:
-- Renamescreenshot.png
tobaseline.png
.
-- Addlatest.png
to help the user detect important changes to the existing visual baseline. - Here's an example of a
side_by_side.html
file from./latest_logs/
:
- See SeleniumBase/examples/visual_testing/ReadMe.md for complete instructions.
- Or see the Docs page: https://seleniumbase.io/examples/visual_testing/ReadMe/
Also:
- Improve output for deferred asserts:
-- (For when the user forgets to callself.process_deferred_asserts()
before the end of tests.) - Refresh Python dependencies:
--parso==0.8.3;python_version>="3.6"
Improve parsing of Selenoid capabilities from cap files
Improve parsing of Selenoid capabilities from cap files
- This resolves #1090
This should allow for easy parsing of the following cap-file example:
capabilities = {
"screenResolution": "1280x1024x24",
"selenoid:options": {
"enableVNC": True,
"enableVideo": False,
},
}
(as seen from SeleniumBase/examples/capabilities/selenoid_cap_file.py)
A valid command-line arg for this should also be accepted. Eg:
pytest --cap-string='{"selenoid:options": {"enableVNC": true}}
- Also refresh Python dependencies:
--rich==10.15.1;python_version>="3.6"
Add compatibility with "Selenoid" Selenium grids
Add compatibility with "Selenoid" Selenium grids
- Add compatibility with "Selenoid" Selenium grids:
-- On the command-line, add--cap-string='{"selenoid": "true"}'
-- Or use--cap-file=CAP_FILE.py
with a line that contains:
--------"selenoid": "true",
-- This resolves #1088 - Also refresh Python dependencies:
--setuptools>=59.4.0;python_version>="3.6"
--rich==10.15.0;python_version>="3.6"
Refresh Python dependencies
Refresh Python dependencies
setuptools>=59.3.0;python_version>="3.6"
ipython==7.30.0;python_version>="3.7"
prompt-toolkit==3.0.23;python_version>="3.6.2"
coverage==6.2;python_version>="3.6"
(optional dependency)
Shadow DOM overhaul and more
Shadow DOM overhaul and more
- This resolves #1083
- Update code for Shadow DOM changes in Chromium 96+
- Update dependencies:
--selenium==4.1.0;python_version>="3.7"
--packaging>=21.3;python_version>="3.6"
--setuptools>=59.2.0;python_version>="3.6"
--charset-normalizer==2.0.8;python_version>="3.5"
--more-itertools==8.12.0;python_version>="3.5"
--cryptography==36.0.0;python_version>="3.7"
--typing-extensions==3.10.0.2;python_version<"3.6"
--typing-extensions==4.0.0;python_version>="3.6" and python_version<"3.8"
- Update default Firefox preferences:
--"browser.contentblocking.database.enabled", True
- Add method:
self.is_valid_url(url)
- Allow URLs that start with
view-source:
when callingself.open(url)
- Add the Recorder Desktop App (located in
examples/desktop_apps/
.