如何解决 Browserstack Local Testing SSLError("bad handshake")

How to resolve Browserstack Local Testing SSLError("bad handshake")

当通过 https 建立远程 webdriver 连接时:

self.driver = webdriver.Remote(command_executor='https://' + settings.BROWSERSTACK_USERNAME + ':' + settings.BROWSERSTACK_KEY + '@hub-cloud.browserstack.com/wd/hub', desired_capabilities=desired_cap)

弹出此错误消息:

MaxRetryError: HTTPSConnectionPool(host='hub-cloud.browserstack.com', port=443): Max retries exceeded with url: /wd/hub/session (Caused by SSLError(SSLError("bad handshake: Error([('SSL routines', 'tls_process_server_certificate', 'certificate verify failed')],)",),))

来自 Browserstack 的常见问题解答:

我的 firewall/IDP/proxy 拒绝来自 BrowserStack.com 的 SSL/HTTPS 内容 这可能是因为缺少证书链,因此您的 firewall/IDP/proxy 可能无法识别或阻止 SSL/HTTPS 内容。如果您的 firewall/IDP/proxy 没有定期更新,通常会发生这种情况。在这种情况下,请从 GoDaddy 存储库安装 ValiCert 旧证书链,然后重试。

我走在正确的轨道上吗? (遵循 Browserstack 的常见问题解答)

*OS: Fedora-30

提前感谢您的帮助....

您可以尝试通过网络的端口 80 和 443 将集线器 URL 从 HTTPS 更改为 HTTP 或白名单 *.browserstack.com。