webdriverio: [šŸ› Bug]: Couldn't find a matching Chrome browser for tag ${tag} on platform ${platform}

Have you read the Contributing Guidelines on issues?

WebdriverIO Version

latest

Node.js Version

16

Mode

Standalone Mode

Which capabilities are you using?

{
        browserName: 'chrome',
}

What happened?

tests are not run, an error is displayed: Couldn’t find a matching Chrome browser for tag ā€œ116.0.5845.96ā€ on platform ā€œmac_armā€

This error is showing on my machine (and other members of my team on linux/intel mac/Mac M1) for a project that was generated according to: https://webdriver.io/docs/gettingstarted

npm init wdio .

package.json: package.txt

wdio.conf.js: wdio_conf.txt

What is your expected behavior?

The chromedriver is downloaded and the browser is launched

How to reproduce the bug.

create a new project:

npm init wdio .

Installing @wdio/cli to initialize project… āœ” Success!

=============================== šŸ¤– WDIO Configuration Wizard šŸ§™

? What type of testing would you like to do? E2E Testing - of Web or Mobile Applications ? Where is your automation backend located? On my local machine ? Which environment you would like to automate? Web - web applications in the browser ? With which browser should we start? Chrome ? Which framework do you want to use? Mocha (https://mochajs.org/) ? Do you want to use a compiler? Babel (https://babeljs.io/) ? Do you want WebdriverIO to autogenerate some test files? Yes ? Where should these files be located? /Users/user/workspace/tmp/wdio-tmp–v8/test/specs//*.js ? Do you want to use page objects (https://martinfowler.com/bliki/PageObject.html)? Yes ? Where are your page objects located? /Users/user/workspace/tmp/wdio-tmp–v8/test/pageobjects//*.js ? Which reporter do you want to use? spec ? Do you want to add a plugin to your test setup? wait-for ? Do you want to add a service to your test setup? ? What is the base url? http://localhost ? Do you want me to run npm install Yes

Setting up Babel project… āœ” Success!

Installing wdio packages:

added 226 packages, and audited 754 packages in 11s

103 packages are looking for funding run npm fund for details

found 0 vulnerabilities āœ” Success!

Creating a WebdriverIO config file… āœ” Success!

Autogenerating test files… āœ” Success!

Adding ā€œwdioā€ script to package.json. āœ” Success!

šŸ¤– Successfully setup project at /Users/user/workspace/tmp/wdio-tmp–v8 šŸŽ‰

Relevant log output

npm run wdio

Execution of 1 workers started at 2023-08-18T11:07:57.632Z

2023-08-18T11:07:57.643Z INFO @wdio/cli:launcher: Run onPrepare hook
2023-08-18T11:07:57.643Z INFO @wdio/utils: Setting up browser driver for: chrome@stable
2023-08-18T11:07:57.675Z INFO @wdio/utils: Setting up browser binaries for: chrome@stable
2023-08-18T11:07:57.862Z INFO webdriver: Downloading Chromedriver v116.0.5845.96
2023-08-18T11:07:58.124Z WARN webdriver: Couldn't download Chromedriver v116.0.5845.96: unable to get local issuer certificate, trying to find known good version...
2023-08-18T11:07:58.133Z INFO @wdio/local-runner: Shutting down spawned worker
2023-08-18T11:07:58.386Z INFO @wdio/local-runner: Waiting for 0 to shut down gracefully
2023-08-18T11:07:58.387Z INFO @wdio/local-runner: shutting down
Error: Error: Couldn't find a matching Chrome browser for tag "116.0.5845.96" on platform "mac_arm"
    at setupChrome (file:///Users/user/workspace/tmp/wdio-tmp--v8/node_modules/@wdio/utils/build/driver/utils.js:102:15)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async Promise.all (index 0)
    at async Promise.all (index 1)
    at async Launcher.run (file:///Users/user/workspace/tmp/wdio-tmp--v8/node_modules/@wdio/cli/build/launcher.js:98:13)
Error: Couldn't find a matching Chrome browser for tag "116.0.5845.96" on platform "mac_arm"
    at setupChrome (file:///Users/user/workspace/tmp/wdio-tmp--v8/node_modules/@wdio/utils/build/driver/utils.js:102:15)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async Promise.all (index 0)
    at async Promise.all (index 1)
    at async Launcher.run (file:///Users/user/workspace/tmp/wdio-tmp--v8/node_modules/@wdio/cli/build/launcher.js:98:13)

Code of Conduct

  • I agree to follow this project’s Code of Conduct

Is there an existing issue for this?

  • I have searched the existing issues

About this issue

  • Original URL
  • State: closed
  • Created 10 months ago
  • Reactions: 6
  • Comments: 52 (16 by maintainers)

Most upvoted comments

@christian-bromann setting the browser version according to the new approach for wdio8 will start an attempt to download it, which will end with the error described in this thread: Couldn’t find a matching Chrome browser for tag ${tag} on platform ${platform}

I did some tests and I confirm that for wdio-7 launching the browser with usage: ā€œwdio-chromedriver-serviceā€: ā€œ^8.1.1ā€, ā€œchromedriverā€: ā€œ^116.0.0ā€,

works fine (tests run and everything works)

it seems that in some cases the chromedriver download mechanism used for wdio8 doesn’t work properly…

I will go ahead and close the issue since there hasn’t been any new development to the problem since last October. If you update to latest WebdriverIO v8 you should have no issues setting up browser and driver in WebdriverIO. If you experience problems, please raise a new issue with a reproducible example. Thanks!

Yes, the issue should be resolved now. Let me know if it isn’t.

For some reason the automatic Chromedriver download only works for me after adding the proxy to my .npmrc:
https-proxy = http://corporateproxy.domain.com:80 Until this was added I could only specify a a specific version (like ā€œ117.0.5938.149ā€) in capabilities, but now I can also use ā€œstableā€, ā€œbetaā€ etc. and even omit browserVersion completely.

Setting the proxy as an Environment Variable - which is normally enough - did not help!

WDIO version is 8.16.20

https://googlechromelabs.github.io/chrome-for-testing/known-good-versions.json the oldest version you can use is: 113.0.5672.0

You are right, thanks! i was checking the normal chrome versions not the testing ones. Is there any way to make webdriverio completely ignore the download of the driver? im being forced to use v8.13.0 to avoid all these changes (before i was just using the binary option not setting up a driver), would be good to have a flag since i for instance don’t need any of this but im being forced to (maybe there is but i couldn’t find it).