ChromeDriver is a standalone server that implements the W3C WebDriver standard. WebDriver is an open source tool built for automated testing of webapps across many browsers. Its interface allows for control and introspection of user agents locally or remotely using capabilities.
Capabilities are a language-neutral set of key-value pairs used to define the desired features and behavior of a WebDriver session. Capabilities are typically passed as an argument when creating a WebDriver instance, and can be used to specify browser settings, such as the browser name, version, and page loading strategy.
ChromeDriver extends Webdriver by adding Chromium-specific capabilities. It uses the
ChromeOptions object to pass capabilities to ChromeDriver from the WebDriver API. Some Chromium-specific capabilities include the ability to install extensions, change window types, and pass command line arguments on startup.
ChromeDriver is available for Chrome on Android and Chrome on Desktop (Mac, Linux, Windows and ChromeOS).
You can view the current implementation status of the WebDriver standard here.
Latest ChromeDriver binaries
- Starting with M115 the latest Chrome + ChromeDriver releases per release channel (Stable, Beta, Dev, Canary) are available at the Chrome for Testing availability dashboard. For automated version downloading one can use the convenient JSON endpoints.
- The older releases can be found at the Downloads page.
- Getting started with ChromeDriver on Desktop (Windows, Mac, Linux)
- ChromeOptions, the capabilities of ChromeDriver
- Mobile emulation
- Security Considerations, with recommendations on keeping ChromeDriver safe
- Chrome Extension installation
- Verbose logging and performance data logging
- Chrome crashes immediately or doesn't start
- ChromeDriver crashes
- Clicking issues
- Operation Not Supported when using remote debugging