Forum Discussion

ronyshkiv's avatar
ronyshkiv
New Contributor
3 months ago

Remote bowser communication issue

Hi there,

I have a problem. We are using Bitbar for WEB UI remote tests execution. Inside our company we are using Azure, and running tests, we're getting following:

Error communicating with the remote browser. It may have died. Build info: version: '4.19.1', revision: 'abe0ee07dc' System info: os.name: 'Windows Server 2019', os.arch: 'amd64', os.version: '10.0', java.version: '17.0.7' Driver info: org.openqa.selenium.remote.RemoteWebDriver Command: [d9573d1ce0c85a148b50ed528ac6d3b9, get [url]] Capabilities {acceptInsecureCerts: false, browserName: chrome, browserVersion: 126.0.6478.57, chrome: {chromedriverVersion: 126.0.6478.55 (7616ff175414..., userDataDir: C:\Users\selenium\AppData\L...}, fedcm:accounts: true, goog:chromeOptions: {debuggerAddress: localhost:60352}, networkConnectionEnabled: false, pageLoadStrategy: normal, platformName: windows, proxy: Proxy(), se:bidiEnabled: false, se:cdp: ws://localhost:4444/session..., se:cdpVersion: 126.0.6478.57, setWindowRect: true, strictFileInteractability: false, timeouts: {implicit: 0, pageLoad: 300000, script: 30000}, unhandledPromptBehavior: dismiss and notify, webauthn:extension:credBlob: true, webauthn:extension:largeBlob: true, webauthn:extension:minPinLength: true, webauthn:extension:prf: true, webauthn:virtualAuthenticators: true} Session ID: d9573d1ce0c85a148b50ed528ac6d3b9

Driver initialization:

driver = ThreadLocal.withInitial(() -> {
try {
return new RemoteWebDriver(new URL(BITBAR_DRIVER_URL), new OptionManager().getBitBarOptions(os, osVersion,browser, version, ACCESS_KEY));
} catch (MalformedURLException e) {
throw new NoBrowserException("This combination of OS and Browser is not supported on BitBar, or browser version not exists");
}
});

Capabilities:

public MutableCapabilities getBitBarOptions(String os, String osVersion, String browser, String version, String accessKey) {
MutableCapabilities capabilities = new MutableCapabilities();
capabilities.setCapability("platformName", os);
capabilities.setCapability("browserName", browser);
capabilities.setCapability("browserVersion", version);

HashMap<String, String> bitbarOptions = new HashMap<String, String>();
bitbarOptions.put("apiKey", accessKey);
bitbarOptions.put("osVersion", osVersion);
bitbarOptions.put("resolution", "1920x1080");
bitbarOptions.put("seleniumVersion", "4");
capabilities.setCapability("bitbar:options", bitbarOptions);

return capabilities;
}

Tunnel start logic in pipeline script:

start /b SBSecureTunnel.exe --username USER --authkey API_KEY --acceptAllCerts

 

Has someone faced something similar?