Skip to content

Releases: seleniumbase/SeleniumBase

The Recorder Desktop App: Deluxe Edition (and more)

17 Dec 10:13
58c628f

Choose a tag to compare

The Recorder Desktop App: Deluxe Edition (and more)

  • Create the Recorder Mode Desktop App: Deluxe Edition:
    -- Activate/open by using: sbase recorder
  • Update Recorder Mode
  • Fix xpath-to-css selector conversion
  • Refresh Python dependencies:
    -- cryptography==36.0.1;python_version>="3.7"
    -- rich==10.16.1;python_version>="3.6"

Many tickets have been completed:

Here's a preview of the Recorder Mode Desktop App:

recorder_desktop

Add translations, improve reliability, and refresh dependencies

14 Dec 03:02
906b538

Choose a tag to compare

Add translations, improve reliability, and refresh dependencies

  • Add new method translations for languages
  • Improve browser-launching reliability for Chrome
  • Refresh Python dependencies:
    -- setuptools>=59.6.0;python_version>="3.6"
    -- tomli>=1.2.2;python_version>="3.6" and python_version<"3.7"
    -- tomli>=2.0.0;python_version>="3.7"
    -- rich==10.16.0;python_version>="3.6"

Refresh Python dependencies

11 Dec 21:30
ed913fb

Choose a tag to compare

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

07 Dec 19:12
b5218fd

Choose a tag to compare

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

03 Dec 16:38
e65fc98

Choose a tag to compare

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!)

03 Dec 05:22
e8b8338

Choose a tag to compare

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 be False by default.
    -- Tests will be faster, but you may need to manually call self.accept_alert() or self.dismiss_alert() because previously, waiting for the readyState of the page to be "complete" might have dismissed alerts automatically due to an existing WebDriver "feature" where calling self.execute_script("") automatically closes pop-up alerts.

Use the correct log path for tests that use the "sb" fixture

02 Dec 20:20
d77472c

Choose a tag to compare

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

02 Dec 05:34
97ab233

Choose a tag to compare

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:
    -- Rename screenshot.png to baseline.png.
    -- Add latest.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/:

side_by_side.html

Also:

  • Improve output for deferred asserts:
    -- (For when the user forgets to call self.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

30 Nov 06:25
91bc000

Choose a tag to compare

Improve parsing of Selenoid capabilities from cap files

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

29 Nov 06:52
f0d6242

Choose a tag to compare

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"