I'm still learning how to use WebDriverIO, also new to MacOS and I was trying to execute a spec file that I did, but I am always receiving this error during the execution of "npm run test:wdio":
> sandbox@2.2.2 test:wdio /Users/vinicius.correia/Desktop/dev/automation/git/node-box/private/sandbox
> wdio
2021-10-04T14:15:35.085Z DEBUG @wdio/sync: Couldn't load fibers package for Node v10 and above
Execution of 1 spec files started at 2021-10-04T14:15:37.529Z
(node:18357) UnhandledPromiseRejectionWarning: Error: Only x64 architecture is available for chroimum edge driver for mac
at getMacChromiumEdgeDriverArchitecture (/Users/vinicius.correia/Desktop/dev/automation/git/node-box/node_modules/selenium-standalone/lib/compute-download-urls.js:312:11)
at getChromiumEdgeDriverArchitecture (/Users/vinicius.correia/Desktop/dev/automation/git/node-box/node_modules/selenium-standalone/lib/compute-download-urls.js:290:16)
at computeDownloadUrls (/Users/vinicius.correia/Desktop/dev/automation/git/node-box/node_modules/selenium-standalone/lib/compute-download-urls.js:107:9)
at processTicksAndRejections (internal/process/task_queues.js:95:5)
at install (/Users/vinicius.correia/Desktop/dev/automation/git/node-box/node_modules/selenium-standalone/lib/install.js:91:16)
(Use `node --trace-warnings ...` to show where the warning was created)
(node:18357) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). To terminate the node process on unhandled promise rejection, use the CLI flag `--unhandled-rejections=strict` (see https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode). (rejection id: 1)
(node:18357) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
It seems it is related to the architecture of the chromium edge driver that is being installed by the wdio/selenium-standalone-service. I am trying to run it on a MacBookPro with an Apple M1 chip.
Any clue about it?
Thanks in advance!
Well, problem solved. I needed to update the selenium-standalone-service to a version >= 7.1.0. Release notes:
v7.1.0
support Apple M1 for chrome and gecko drivers #558
prevent selenium process from hanging if spawned programmatically without stdout/stderr handlers