webdriverio/webdriverio
Ver no GitHub[🐛 Bug]: Firefox on Windows 10 fails with `browsingContext.navigationStarted is not a valid event name`
Open
#14.500 aberto em 21 de mai. de 2025
Bug 🐛help wanted
Description
Have you read the Contributing Guidelines on issues?
- I have read the Contributing Guidelines on issues.
WebdriverIO Version
9.14.0
Node.js Version
22.15.1
Mode
Standalone Mode
Which capabilities are you using?
capabilities: {
browserName: "firefox",
"moz:firefoxOptions": {
args: ["-headless"]
}
}
What happened?
I can not run tests in Firefox on my Windows 10 Build Agent. The error is:
Error: WebDriver Bidi command "session.subscribe" failed with error: invalid argument - browsingContext.navigationStarted is not a valid event name
Everything runs as expected on my Windows 11 development machine. Unfortunately I can not access another Window 10 machine right now.
I experimented with the versions and webdriverio 9.6.4 works and 9.7.0 doesn't.
What is your expected behavior?
The session should open.
How to reproduce the bug.
I created an MRE:
// raw.js
import { remote } from "webdriverio";
const browser = await remote({
capabilities: {
browserName: "firefox",
"moz:firefoxOptions": {
args: ["-headless"]
}
},
logLevel: "info",
});
await browser.url(`about:blank`);
const expected = "";
const value = await browser.getTitle();
if(value !== expected) console.error(`Wrong value! Expected "${expected}", actual "${value}"!`);
// Now we need to close the browser window, because it stays open after this
// program exits
// This is a different topic.
try {
// Throws: "TypeError: Cannot read properties of undefined (reading 'length')"
// window is closed
await browser.closeWindow();
} catch (error) {
console.log(error);
} finally {
process.exit();
}
Relevant log output
Starting: run tests
==============================================================================
Task : Command line
Description : Run a command line script using Bash on Linux and macOS and cmd.exe on Windows
Version : 2.250.1
Author : Microsoft Corporation
Help : https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/command-line
==============================================================================
Generating script.
Script contents: shell
node raw.js
========================== Starting Command Output ===========================
"C:\Windows\system32\cmd.exe" /D /E:ON /V:OFF /S /C "CALL "C:\a\_temp\7cb9ffef-c814-47c7-bfee-67a5f52ac0a8.cmd""
2025-05-21T05:25:15.706Z INFO webdriver: Initiate new session using the WebDriver protocol
2025-05-21T05:25:16.055Z INFO geckodriver: Starting Geckodriver at C:\Users\AzDevOps\AppData\Local\Temp\geckodriver.exe with params: --port=60304 --allow-hosts=localhost --host=0.0.0.0 --websocket-port=0
2025-05-21T05:25:16.078Z INFO geckodriver: 1747805116088 geckodriver INFO Listening on 0.0.0.0:60304
2025-05-21T05:25:16.081Z INFO @wdio/utils: Started GeckoDriver in 41ms on port 60304
2025-05-21T05:25:16.085Z INFO webdriver: [POST] http://localhost:60304/session
2025-05-21T05:25:16.085Z INFO webdriver: DATA {
capabilities: {
alwaysMatch: {
browserName: 'firefox',
'moz:firefoxOptions': [Object],
webSocketUrl: true,
unhandledPromptBehavior: 'ignore'
},
firstMatch: [ {} ]
}
}
2025-05-21T05:25:16.112Z INFO geckodriver: 1747805116123 mozrunner::runner INFO Running command: "C:\\Program Files\\Mozilla Firefox\\firefox.exe" "--marionette" "-headless" "--remote-debugging-port" "0" "--remote-allow-hosts" "localhost" "-no-remote" "-profile" "C:\\Users\\AzDevOps\\AppData\\Local\\Temp\\rust_mozprofilejPnt8x"
2025-05-21T05:25:16.187Z WARN geckodriver: *** You are running in headless mode.
2025-05-21T05:25:16.278Z INFO geckodriver: console.warn: services.settings: Ignoring preference override of remote settings server
2025-05-21T05:25:16.279Z INFO geckodriver: console.warn: services.settings: Allow by setting MOZ_REMOTE_SETTINGS_DEVTOOLS=1 in the environment
2025-05-21T05:25:16.512Z INFO geckodriver: 1747805116524 Marionette INFO Marionette enabled
2025-05-21T05:25:16.515Z WARN geckodriver: Dynamically enable window occlusion 0
2025-05-21T05:25:16.518Z INFO geckodriver: 1747805116530 Marionette INFO Listening on port 60309
2025-05-21T05:25:16.533Z INFO geckodriver: Read port: 60309
2025-05-21T05:25:16.624Z WARN geckodriver: WebDriver BiDi listening on ws://127.0.0.1:60311
2025-05-21T05:25:17.379Z INFO geckodriver: [GFX1-]: RenderCompositorSWGL failed mapping default framebuffer, no dt
2025-05-21T05:25:18.187Z WARN geckodriver: [ERROR glean_core] Error setting metrics feature config: Json(Error("EOF while parsing a value", line: 1, column: 0))
2025-05-21T05:25:18.501Z WARN geckodriver: DevTools listening on ws://127.0.0.1:60311/devtools/browser/0262dfcb-d58f-488d-a46a-27a602f2bdf9
2025-05-21T05:25:18.533Z INFO webdriver: Register BiDi handler for session with id 43842fab-a29a-45bf-9871-f6d1bc9a17e5
2025-05-21T05:25:18.534Z INFO webdriver: Connecting to webSocketUrl ws://127.0.0.1:60311/session/43842fab-a29a-45bf-9871-f6d1bc9a17e5
2025-05-21T05:25:18.550Z INFO geckodriver: 1747805118562 RemoteAgent INFO Perform WebSocket upgrade for incoming connection from 127.0.0.1:60320
2025-05-21T05:25:18.555Z INFO webdriver: Connected to Bidi protocol at ws://127.0.0.1:60311/session/43842fab-a29a-45bf-9871-f6d1bc9a17e5
2025-05-21T05:25:18.555Z INFO webdriver: Connected to WebDriver Bidi interface at ws://127.0.0.1:60311/session/43842fab-a29a-45bf-9871-f6d1bc9a17e5
2025-05-21T05:25:18.556Z INFO webdriver: BIDI COMMAND browsingContext.getTree {}
2025-05-21T05:25:18.558Z INFO webdriver: BIDI COMMAND session.subscribe {"events":["browsingContext.contextCreated"]}
2025-05-21T05:25:18.559Z INFO webdriver: BIDI COMMAND session.subscribe {"events":["log.entryAdded","browsingContext.navigationStarted"]}
2025-05-21T05:25:18.559Z INFO webdriver: BIDI COMMAND script.addPreloadScript { functionDeclaration: <PreloadScript[1319 bytes]>, contexts: undefined }
2025-05-21T05:25:18.560Z INFO webdriver: BIDI COMMAND session.subscribe {"events":["browsingContext.navigationStarted","browsingContext.fragmentNavigated","network.responseCompleted","network.beforeRequestSent","network.fetchError"]}
2025-05-21T05:25:18.561Z INFO webdriver: BIDI COMMAND session.subscribe {"events":["browsingContext.userPromptOpened"]}
2025-05-21T05:25:18.562Z INFO webdriver: BIDI COMMAND session.subscribe {"events":["browsingContext.navigationStarted"]}
2025-05-21T05:25:18.563Z INFO webdriver: COMMAND getWindowHandle()
2025-05-21T05:25:18.564Z INFO webdriver: [GET] http://localhost:60304/session/43842fab-a29a-45bf-9871-f6d1bc9a17e5/window
2025-05-21T05:25:18.570Z INFO webdriver: BIDI RESULT {"id":1,"result":{"contexts":[{"context":"53645d30-9a61-4804-a200-ebcbcca30007","url":"about:blank","children":[],"parent":null}]}}
2025-05-21T05:25:18.571Z INFO webdriverio:PolyfillManager: Adding polyfill script to context with id 53645d30-9a61-4804-a200-ebcbcca30007
2025-05-21T05:25:18.571Z INFO webdriver: BIDI COMMAND script.addPreloadScript { functionDeclaration: <PreloadScript[442 bytes]>, contexts: ["53645d30-9a61-4804-a200-ebcbcca30007"] }
2025-05-21T05:25:18.572Z INFO webdriver: BIDI COMMAND script.callFunction {"functionDeclaration":"<Function[442 bytes] webdriverioPolyfill>","target":{"context":"53645d30-9a61-4804-a200-ebcbcca30007","url":"about:blank","children":[],"parent":null},"awaitPromise":false}
node:internal/process/promises:394
2025-05-21T05:25:18.575Z INFO webdriver: BIDI RESULT {"id":3,"error":"invalid argument","message":"browsingContext.navigationStarted is not a valid event name","stacktrace":"RemoteError@chrome://remote/content/shared/RemoteError.sys.mjs:8:8\nWebDriverError@chrome://remote/content/shared/webdriver/Errors.sys.mjs:183:5\nInvalidArgumentError@chrome://remote/content/shared/webdriver/Errors.sys.mjs:312:5\n#assertModuleSupportsEvent@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:122:13\n#obtainEvents@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:191:38\n#updateEventMap/<@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:264:25\n#updateEventMap@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:263:25\nsubscribe@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:77:43\nhandleCommand@chrome://remote/content/shared/messagehandler/MessageHandler.sys.mjs:249:33\nexecute@chrome://remote/content/shared/webdriver/Session.sys.mjs:244:32\nonPacket@chrome://remote/content/webdriver-bidi/WebDriverBiDiConnection.sys.mjs:175:37\nonMessage@chrome://remote/content/server/WebSocketTransport.sys.mjs:83:18\nhandleEvent@chrome://remote/content/server/WebSocketTransport.sys.mjs:65:14\n"}
triggerUncaughtException(err, true /* fromPromise */);
2025-05-21T05:25:18.697Z INFO webdriver: BIDI RESULT {"id":5,"error":"invalid argument","message":"browsingContext.navigationStarted is not a valid event name","stacktrace":"RemoteError@chrome://remote/content/shared/RemoteError.sys.mjs:8:8\nWebDriverError@chrome://remote/content/shared/webdriver/Errors.sys.mjs:183:5\nInvalidArgumentError@chrome://remote/content/shared/webdriver/Errors.sys.mjs:312:5\n#assertModuleSupportsEvent@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:122:13\n#obtainEvents@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:191:38\n#updateEventMap/<@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:264:25\n#updateEventMap@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:263:25\nsubscribe@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:77:43\nhandleCommand@chrome://remote/content/shared/messagehandler/MessageHandler.sys.mjs:249:33\nexecute@chrome://remote/content/shared/webdriver/Session.sys.mjs:244:32\nonPacket@chrome://remote/content/webdriver-bidi/WebDriverBiDiConnection.sys.mjs:175:37\nonMessage@chrome://remote/content/server/WebSocketTransport.sys.mjs:83:18\nhandleEvent@chrome://remote/content/server/WebSocketTransport.sys.mjs:65:14\n"}
^
2025-05-21T05:25:18.698Z INFO webdriver: BIDI RESULT {"id":6,"error":"invalid argument","message":"browsingContext.userPromptOpened is not a valid event name","stacktrace":"RemoteError@chrome://remote/content/shared/RemoteError.sys.mjs:8:8\nWebDriverError@chrome://remote/content/shared/webdriver/Errors.sys.mjs:183:5\nInvalidArgumentError@chrome://remote/content/shared/webdriver/Errors.sys.mjs:312:5\n#assertModuleSupportsEvent@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:122:13\n#obtainEvents@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:191:38\n#updateEventMap/<@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:264:25\n#updateEventMap@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:263:25\nsubscribe@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:77:43\nhandleCommand@chrome://remote/content/shared/messagehandler/MessageHandler.sys.mjs:249:33\nexecute@chrome://remote/content/shared/webdriver/Session.sys.mjs:244:32\nonPacket@chrome://remote/content/webdriver-bidi/WebDriverBiDiConnection.sys.mjs:175:37\nonMessage@chrome://remote/content/server/WebSocketTransport.sys.mjs:83:18\nhandleEvent@chrome://remote/content/server/WebSocketTransport.sys.mjs:65:14\n"}
2025-05-21T05:25:18.698Z INFO webdriver: BIDI RESULT {"id":7,"error":"invalid argument","message":"browsingContext.navigationStarted is not a valid event name","stacktrace":"RemoteError@chrome://remote/content/shared/RemoteError.sys.mjs:8:8\nWebDriverError@chrome://remote/content/shared/webdriver/Errors.sys.mjs:183:5\nInvalidArgumentError@chrome://remote/content/shared/webdriver/Errors.sys.mjs:312:5\n#assertModuleSupportsEvent@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:122:13\n#obtainEvents@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:191:38\n#updateEventMap/<@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:264:25\n#updateEventMap@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:263:25\nsubscribe@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:77:43\nhandleCommand@chrome://remote/content/shared/messagehandler/MessageHandler.sys.mjs:249:33\nexecute@chrome://remote/content/shared/webdriver/Session.sys.mjs:244:32\nonPacket@chrome://remote/content/webdriver-bidi/WebDriverBiDiConnection.sys.mjs:175:37\nonMessage@chrome://remote/content/server/WebSocketTransport.sys.mjs:83:18\nhandleEvent@chrome://remote/content/server/WebSocketTransport.sys.mjs:65:14\n"}
Error: WebDriver Bidi command "session.subscribe" failed with error: invalid argument - browsingContext.navigationStarted is not a valid event name
2025-05-21T05:25:18.941Z INFO webdriver: BIDI RESULT {"id":2,"result":{}}
at BidiHandler.send (file:///C:/a/2/s/node_modules/webdriver/build/node.js:472:23)
2025-05-21T05:25:18.941Z INFO webdriver: BIDI RESULT {"id":4,"result":{"script":"15179533-2a04-4906-8e01-321d534bd906"}}
at BidiHandler.sessionSubscribe (file:///C:/a/2/s/node_modules/webdriver/build/node.js:588:31)
2025-05-21T05:25:18.942Z INFO webdriver: BIDI RESULT {"id":8,"result":{"script":"6d568607-d8b4-4d76-90b7-d4021e9ef43d"}}
at Browser.value (file:///C:/a/2/s/node_modules/webdriver/build/node.js:1377:26)
2025-05-21T05:25:18.942Z INFO webdriver: BIDI RESULT {"id":9,"result":{"realm":"cb233076-6461-4dde-bac2-3c0f0b351352","type":"success","result":{"type":"undefined"}}}
at Browser.wrapCommandFn (file:///C:/a/2/s/node_modules/@wdio/utils/build/index.js:907:32)
at Browser.<anonymous> (file:///C:/a/2/s/node_modules/@wdio/utils/build/index.js:1022:20)
at new _ContextManager (file:///C:/a/2/s/node_modules/webdriverio/build/node.js:280:21)
at SessionManager.getSessionManager (file:///C:/a/2/s/node_modules/webdriverio/build/node.js:192:32)
at getContextManager (file:///C:/a/2/s/node_modules/webdriverio/build/node.js:254:25)
at registerSessionManager (file:///C:/a/2/s/node_modules/webdriverio/build/node.js:5077:5)
at remote (file:///C:/a/2/s/node_modules/webdriverio/build/node.js:8783:9)
Driver Stack:
at RemoteError@chrome://remote/content/shared/RemoteError.sys.mjs:8:8
at WebDriverError@chrome://remote/content/shared/webdriver/Errors.sys.mjs:183:5
at InvalidArgumentError@chrome://remote/content/shared/webdriver/Errors.sys.mjs:312:5
at #assertModuleSupportsEvent@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:122:13
at #obtainEvents@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:191:38
at #updateEventMap/<@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:264:25
at #updateEventMap@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:263:25
at subscribe@chrome://remote/content/webdriver-bidi/modules/root/session.sys.mjs:77:43
at handleCommand@chrome://remote/content/shared/messagehandler/MessageHandler.sys.mjs:249:33
at execute@chrome://remote/content/shared/webdriver/Session.sys.mjs:244:32
at onPacket@chrome://remote/content/webdriver-bidi/WebDriverBiDiConnection.sys.mjs:175:37
at onMessage@chrome://remote/content/server/WebSocketTransport.sys.mjs:83:18
at handleEvent@chrome://remote/content/server/WebSocketTransport.sys.mjs:65:14
Node.js v22.15.1
##[error]Cmd.exe exited with code '1'.
Finishing: run tests
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