Selenium
Dev ToolsA browser automation framework and ecosystem.
Release History
selenium-4.41.02 fixes3 featuresThis release focuses heavily on build system improvements, including Bazel integration, workflow consolidation, and dependency management across all language bindings. Key functional updates include canonical support for AI agent directions and improved cancellation support in .NET BiDi.
selenium-4.40.0Breaking13 fixes5 featuresThis release focuses heavily on internal modernization, especially in Java (replacing Guava, refactoring assertions) and DotNet, alongside numerous stability fixes across Ruby, Python, and Bazel build systems. Key feature additions include new BiDi emulation commands for network conditions and screen orientation in Java and Python.
nightlyThis release primarily contains test cleanup and infrastructure improvements with no functional changes for end users.
selenium-4.39.015 fixes22 featuresThis release adds numerous BiDi emulation commands, UI enhancements for Grid, and a host of bug fixes and documentation updates across Java, Python, .NET, and other language bindings.
selenium-4.38.0Breaking8 fixes5 featuresSelenium 4.38.0 adds extensive JSpecify annotations, a new Bidi timezone‑override command, dependency bumps, and several bug fixes, with a few breaking removals of deprecated Ruby logging classes and .NET DTO handling.
selenium-4.37.0Breaking12 fixes24 featuresSelenium 4.x release adds extensive BiDi enhancements, native Java 11 HTTP client methods, drops Python 3.9 support, and includes numerous bug fixes and new features across all language bindings.
selenium-4.36.011 fixes18 featuresThis release introduces new BiDi events and modules across Java, Python, .NET, and other language bindings, improves Grid client cleanup and timeout handling, and includes numerous bug fixes and dependency updates.
selenium-4.35.0Breaking13 fixes18 featuresThis Selenium release adds numerous BiDi enhancements, nullable annotation support, and dependency updates while fixing several bugs and removing deprecated APIs such as AppCacheStatus and old navigation commands.
selenium-4.34.0Breaking13 fixes10 featuresThis release adds several new BiDi options and API enhancements, fixes numerous bugs, deprecates Java FtpProxy, and introduces a breaking namespace change in the .NET bindings.
selenium-4.33.0Breaking7 fixes12 featuresSelenium 4.33.0 introduces new BiDi modules, UI enhancements, and several deprecations removals while fixing type‑checking and download errors. Users need to adjust Java code for removed APIs and handle the new `message` field in Python execute exceptions.
selenium-4.32.0Breaking20 fixes24 featuresThis Selenium release adds extensive BiDi support across languages, introduces new browser and network modules, and fixes numerous test and logging issues, while breaking .NET BiDi network interception and script error handling APIs.
selenium-4.31.0Breaking12 fixes9 featuresSelenium 4.31.0 adds several new features, fixes numerous bugs across language bindings, and introduces breaking changes for .NET BiDi ContinueWithAuthCommand and Bazel remote configuration naming.
selenium-4.30.0Breaking16 fixes15 featuresSelenium 4.30 introduces extensive .NET nullability annotations, removes obsolete members, and adds numerous BiDi and Grid features while fixing a wide range of bugs across all language bindings.
selenium-4.29.0Breaking9 fixes14 featuresThis release adds several BiDi enhancements, improves page‑size handling, updates Grid UI, and introduces extensive nullability annotations, while removing Firefox CDP support which may require code changes.
selenium-4.28.0Breaking18 fixes14 featuresThis release adds numerous nullability annotations, new API methods (e.g., execute_cdp_cmd, BiDi Network handlers), several bug fixes, and updates to build dependencies, while deprecating IWebDriver.GetAttribute in the .NET bindings.
Common Errors
WebDriverException15 reportsWebDriverException in Selenium usually arises from mismatched browser/driver versions, incorrect driver path configuration, or browser incompatibility with the driver. Ensure your browser and corresponding WebDriver (e.g., ChromeDriver, GeckoDriver) versions are compatible and that the driver executable is correctly placed in your system's PATH or explicitly specified in your Selenium code. Updating both the browser and driver to their latest versions often resolves compatibility issues.
SessionNotCreatedException6 reportsThe SessionNotCreatedException in Selenium usually arises from a mismatch between the WebDriver version (e.g., ChromeDriver, EdgeDriver) and the browser version installed. To fix this, download the WebDriver version that corresponds to your current browser version from the official vendor website (e.g., ChromeDriver downloads for Chrome) and ensure it is accessible on your system's PATH, or specify the webdriver path when instantiating the webdriver in your code. Alternatively, use a WebDriver manager like WebDriverManager to automatically handle driver downloads and configuration.
NoSuchDriverException4 reportsNoSuchDriverException typically arises when Selenium can't locate the appropriate driver (e.g., ChromeDriver, geckodriver) for the browser you're using. Ensure that the driver executable is either in your system's PATH or that you've explicitly specified its location using `webdriver_manager` or selenium manager, also verify the driver and browser versions are compatible. If using selenium manager check it is properly executable and not locked by another process.
WebDriverError4 reportsWebDriverError in Selenium often indicates a mismatch between the browser driver version (e.g., ChromeDriver, GeckoDriver) and the browser version installed on your system. Ensure that you download and use the correct driver version corresponding to your browser's version, and that the driver executable is properly placed in your system's PATH or specified in your Selenium code. Also, verify that your browser installation is not corrupted or inaccessible, and that your profile exists.
NoSuchElementException3 reportsNoSuchElementException typically arises when Selenium cannot find an element matching the specified locator at the time of the find operation. To fix this, use explicit waits with `WebDriverWait` and `expected_conditions` to ensure the element is present and interactable before attempting to interact with it. Adjust the timeout and expected condition (e.g., `presence_of_element_located`, `element_to_be_clickable`) based on the specific element and application behavior.
ConnectionFailedException3 reportsConnectionFailedException in Selenium often arises from mismatched driver/browser versions, incorrect server configurations, or network connectivity issues. To fix it, ensure your browser and driver versions are compatible, double-check the Selenium Grid/server address and port, and verify that firewalls aren't blocking the connection. Specifically, update your driver, browser and selenium version to the latest available versions.
Related Dev Tools Packages
Empowering everyone to build reliable and efficient software.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
Playwright is a framework for Web Testing and Automation. It allows testing Chromium, Firefox and WebKit with a single API.
Next generation frontend tooling. It's fast!
An extremely fast Python package and project manager, written in Rust.
A bundler for javascript and friends. Packs many modules into a few bundled assets. Code Splitting allows for loading parts of the application on demand. Through "loaders", modules can be CommonJs, AMD, ES6 modules, CSS, Images, JSON, Coffeescript, LESS, ... and your custom stuff.
Subscribe to Updates
Get notified when new versions are released