TL;DR

  • DotNet WebDriver BiDirectional Protocol (BiDi) received significant alignments and logging improvements.
  • Java bindings fixed NoSuchElementException for custom By locators and enhanced nullability checks.
  • An initial Selenium CLI Tool has been introduced, streamlining common tasks.

Key Changes

SeleniumHQ has released selenium-4.44.0, bringing a focused set of updates across its language bindings and core components. This release primarily refines existing functionalities and introduces new developer tools.

For DotNet users, the WebDriver BiDirectional Protocol (BiDi) has seen extensive alignment, with static declarations for commands and events, and refined SetDownloadBehavior, ContinueWithAuth, and SetGeolocation commands. Logging mechanisms were improved to prevent truncation of internal messages, and planned obsoleted members for 4.44 were removed. Additionally, C# 14 extensions were added for ArgumentNullException.ThrowIfNull, and network monitoring via DevTools received a fix.

Java bindings now correctly handle NoSuchElementException for custom By locators, addressing a long-standing issue. Nullability specifications were added to org.openqa.selenium.remote package, and an NPE fix was implemented for null response statuses, enhancing stability. The HttpClient interface also saw deprecation of ’native’ methods.

Python bindings benefit from a new CDDL 2 Python generator and now utilize generated BiDi files, moving away from hand-curated ones. Documentation has been updated with pytest examples, which can be useful for those learning Selenium for beginners.

A notable addition is the Initial Creation of the Selenium CLI Tool. This command-line interface aims to simplify various Selenium-related tasks, offering a more streamlined workflow for developers and QA engineers.

Other updates include dynamic DevTools version retrieval for Ruby, acceptance of legacy session-closed event payloads in Grid, and general build improvements. The project also introduced an AI-assisted contribution policy.

Impact for QA Teams

These updates enhance the stability and maintainability of Selenium test suites, particularly for DotNet and Java users. The BiDi protocol alignments in DotNet pave the way for more advanced browser automation capabilities, while Java fixes improve test reliability. The new Selenium CLI Tool could significantly boost productivity by simplifying setup and execution, making it easier to manage distributed testing with Selenium Grid 4.

FAQ