Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

appium-chromium-driver

Package Overview
Dependencies
Maintainers
0
Versions
253
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

appium-chromium-driver

Appium 2.x driver for Chromium-based browsers that work with Chromedriver

  • 1.4.5
  • latest
  • Source
  • npm
  • Socket score

Version published
Weekly downloads
114K
decreased by-2.49%
Maintainers
0
Weekly downloads
 
Created
Source

appium-chromium-driver

npm version Downloads

This is an Appium driver for Chromium-based browsers (like Chrome).

Why does this project exist?

It is already possible to automate Chromium browsers with Chromedriver. In fact, this Appium driver uses Chromedriver under the hood! It is not any kind of fundamentally new or different technology. The advantages of using this project are:

  • Automate Chromium browsers using the Appium server you already have, simply by including this Appium driver.
  • No need to download specific versions of Chromedriver manually. This driver takes care of downloading a version of Chromedriver appropriate for the version of the browser under test.
  • Take advantage of the ecosystem of Appium plugins and features (e.g., image analysis) not available via Chromedriver on its own.

Installation

It's assumed that you have an Appium server (version 2.x+) installed, and that you have a browser compatible with Chromedriver ready to automate on your system. The recommended installation method is to use the Appium extension CLI to install the driver:

appium driver install chromium

Note MSEdge browser support started since v1.1.0

Usage

To start an automation session targeting this driver, construct a set of options/capabilities in any WebDriver client that (minimally) includes the following:

CapabilityValue
platformNameOne of macOS, mac, Linux, or Windows (depending on your system)
browserNamebrowserName to the running WebDriver process. For example, chrome or chromium is for chromedriver, MicrosoftEdge or msedge is for msedge driver.
appium:automationNameChromium

Use these capabilities to start a new session. (Refer to the documentation for your WebDriver client for the particular syntax used to start a session in that client).

At this point, all WebDriver commands are proxied directly to WebDriver. This driver does not implement any additional commands. Refer to the Chromedriver documentation or the WebDriver specification for a list of the available automation commands.

Note Supported WebDriver kinds are chromedriver for Chrome and Chromium browsers and msedgedriver for MSEdge.

Capabilities

In addition to all of the Chromedriver capabilities (nested underneath goog:chromeOptions for Chrome and Chromium or ms:edgeOptions for MSEdge), this driver supports the following:

CapabilityDescriptionDefault Value
appium:chromedriverPortThe port to start WebDriver process on9515
appium:executableThe absolute path to a WebDriver binary executable. If set, the driver will use that path instead of its own WebDriver
appium:executableDirA directory within which is found any number of WebDriver binaries. If set, the driver will search this directory for WebDrivers of the appropriate version to use for your browser
appium:verboseSet to true to add the --verbose flag when starting WebDriverfalse
appium:logPathThe path to use with the --log-path parameter directing WebDriver to write its log to that path, if set
appium:disableBuildCheckSet to true to add the --disable-build-check flag when starting WebDriverfalse
appium:autodownloadEnabledSet to false to disable automatic downloading of Chromedrivers.true
appium:useSystemExecutableSet to true to use the version of WebDriver bundled with this driver, rather than attempting to download a new one based on the version of the browser under testfalse

Note msedgedriver support is limited. appium:autodownloadEnabled does not work for the driver, thus appium:executable is necessary to automate MSEdge browser properly.

Scripts

install-chromedriver

This script is used to install the given or latest stable version of chromedriver (113+) from Chrome for testing with appium driver run chromium install-chromedriver. Please read Version selection document to find a proper chromedriver manually that is good for your current browser.

Below environment arguments are available:

  • CHROMEDRIVER_EXECUTABLE_DIR
    • Let the command to download chromedrivers in the given directory. Defaults to node_modules/appium-chromedriver/chromedriver in appium-chromium-driver package.
    • i.e.
      • macOS/Linux: CHROMEDRIVER_EXECUTABLE_DIR=/path/to/dir appium driver run chromium install-chromedriver
      • Windows: $env:CHROMEDRIVER_EXECUTABLE_DIR='C:\path\to\folder'; appium driver run chromium install-chromedriver; Remove-Item Env:\CHROMEDRIVER_EXECUTABLE_DIR
  • CHROMEDRIVER_VERSION
    • Let the command download a specific version.
    • i.e.
      • macOS/Linux: CHROMEDRIVER_VERSION=131.0.6778.3 appium driver run chromium install-chromedriver
      • Windows: $env:CHROMEDRIVER_VERSION='131.0.6778.3'; appium driver run chromium install-chromedriver; Remove-Item Env:\CHROMEDRIVER_VERSION
  • CHROMELABS_URL
    • Let the command get the list of available chromedrivers from the given mirror instead of the default one.

Contributing

Contributions to this project are welcome! Feel free to submit a PR on GitHub.

To get set up with a working developer environment, clone the project then run:

npm install

To build the code once:

npm run build

To rebuild the code anytime a file is saved:

npm run dev

Before committing any code, please make sure to run:

npm run lint
npm run test:ci

And make sure everything passes!

More developer scripts can be found in package.json.

Keywords

FAQs

Package last updated on 03 Dec 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc