如何为 selenium 的 webdriver 设置 https 代理?

how to set https proxy for selenium's webdriver?

我正在尝试使用量角器进行自动化 javascript 测试。这意味着遵循这些说明: http://www.ng-newsletter.com/posts/practical-protractor.html

npm install -g protractor

完成得很好。然而:

webdriver-manager update

无法绕过我工作时使用的代理。显然,您现在可以在配置中设置代理,但我不知道如何操作:https://github.com/angular/protractor/pull/966 基本上,我需要设置 'env.HTTPS_PROXY',但我看不到在哪里设置?我可以看到我可能可以编辑 webdriver-manager 文件来解决这个问题,但这似乎是错误的。

注意:我已尝试手动安装此文件(从 webdriver-manager 更新)并将它们复制到预期位置,但 jar 文件已损坏。

我刚刚发现它现在配置为支持 --proxy="<proxy>" 作为参数,所以问题解决了。

我还需要为此使用 --ignore_ssl

在cmd中

set PROXY=http://username:password@proxyserver:port
set HTTP_PROXY=%PROXY%
set HTTPS_PROXY=%PROXY% 
webdriver-manager update

或者转到文件 .npmrc 通常在 C:\Users\username.npmrc(如果没有,使用命令 npm config ls -l | grep config 搜索它)并通过键入手动设置代理变量

proxy=http://username:password@proxyserver:port
https-proxy=http://username:password@proxyserver:port

第三种方法是使两个系统环境变量HTTP_PROXY和HTTPS_PROXY的值为http://username:password@proxyserver:port

webdriver-manager update 

对我来说,当我将网络从代理切换到无代理并从显示的 URL 下载文件夹并粘贴到指定位置时它起作用了

\testApp>webdriver-manager update [16:20:02] I/update - chromedriver: file exists C:\Program Files\nodejs\node_modules\protractor\node_modules\webdriver-manager\selenium\chromedriver_2.41.zip [16:20:02] I/update - chromedriver: unzipping chromedriver_2.41.zip [16:20:02] I/update - chromedriver: chromedriver_2.41.exe up to date [16:20:03] I/update - selenium standalone: file exists C:\Program Files\nodejs\node_modules\protractor\node_modules\webdriver-manager\selenium\selenium-server-standalone-3.14.0.jar [16:20:03] I/update - selenium standalone: selenium-server-standalone-3.14.0.jar up to date [16:20:08] I/downloader - curl -oC:\Program Files\nodejs\node_modules\protractor\node_modules\webdriver-manager\selenium/geckodriver-v0.21.0.zip https://github.com/mozilla/geckodriver/releases/download/v0.21.0/geckodriver-v0.21.0-win64.zip