Skip to content

Commit 68bba2d

Browse files
author
Norbert Graf
committed
bugfix: prevent error 'Error: Failed to execute WebDriver Bidi command "sessionSubscribe" as no Bidi session was established. Make sure you enable it by setting "webSocketUrl: true" in your capabilities and verify that your environment and browser supports it.' being printed to stdout when user deactivated Bidi protocol with "bidiProtocol" : false in Webdriver config.
1 parent b27e9cf commit 68bba2d

File tree

1 file changed

+6
-2
lines changed

1 file changed

+6
-2
lines changed

lib/helper/WebDriver.js

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -491,7 +491,7 @@ class WebDriver extends Helper {
491491
}
492492
config.capabilities.browserName = config.browser || config.capabilities.browserName
493493

494-
// WebDriver Bidi Protocol. Default: false
494+
// WebDriver Bidi Protocol. Default: true
495495
config.capabilities.webSocketUrl = config.bidiProtocol ?? config.capabilities.webSocketUrl ?? true
496496

497497
config.capabilities.browserVersion = config.browserVersion || config.capabilities.browserVersion
@@ -629,7 +629,11 @@ class WebDriver extends Helper {
629629

630630
this.browser.on('dialog', () => {})
631631

632-
await this.browser.sessionSubscribe({ events: ['log.entryAdded'] })
632+
// Check for Bidi, because "sessionSubscribe" is an exclusive Bidi protocol feature. Otherwise, error will be thrown.
633+
if (config.capabilities.webSocketUrl) {
634+
await this.browser.sessionSubscribe({ events: ['log.entryAdded'] })
635+
}
636+
633637
this.browser.on('log.entryAdded', logEvents)
634638

635639
return this.browser

0 commit comments

Comments
 (0)