在离线模式下安装量角器 - webdriver-manager启动错误 - 我做错了什么

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在离线模式下安装量角器 - webdriver-manager启动错误 - 我做错了什么相关的知识,希望对你有一定的参考价值。

我需要在没有Internet访问权限的机器上安装和使用Protractor / Selenium。

为此,我尝试下载所有需要的文件并将它们复制到目标计算机。


在我的机器上(可以访问Internet)

我使用以下命令安装了Protractor和Selenium webdriver:

npm install -g protractor
webdriver-manager update

在目标计算机上(无法访问Internet)

我将npm config get prefix返回的位置中的所有文件复制到没有Internet访问权限的计算机上。

然后我在没有Internet访问权限的机器上执行了以下命令:

npm --cache-min 9999999 install -g protractor

这似乎成功了。

但是,当我尝试执行webdriver-manager start命令时,收到以下错误消息:

events.js:183 throw er; //未处理的'错误'事件^

错误:getaddrinfo ENOTFOUND chromedriver.storage.googleapis.com chromedriver.storage.googleapis.com:443在errnoException(dns.js:50:10)的GetAddrInfoReqWrap.onlookup [as oncomplete](dns.js:92:26)

执行webdriver-manager update时我收到同样的错误(在这种情况下:webdriver-manager start: Error: connect ETIMEDOUT

我究竟做错了什么?如何在没有Internet访问权限的情况下在机器上正确设置Protractor和webdriver?

答案

因为webdriver-manager start将通过互联网查找selenium-server.jar和webdriver二进制文件的最新版本号,无论它们是否已存在于本地。

webdriver-manager不提供cmd选项来禁用查找。

快速的方法是直接在webdriver-manager start后面运行java cmd以跳过查找。

java -Dwebdriver.chrome.driver = C: Tools npm-global node_modules webdriver-manager selenium chromedriver_2.38.exe -Dwebdriver.gecko.driver = C: Tools npm-global node_modules webdriver- manager selenium geckodriver-v0.20.1.exe -jar C: Tools npm-global node_modules webdriver-manager selenium selenium-server-standalone-3.11.0.jar -port 4444

复杂的方法是更改​​webdriver-manager代码或在本地设置镜像并使用cmd选项:--alternate_cdn并将其指向您的本地镜像URL。 (我没有验证这可以工作,读完一些源代码后得到它)

以上是关于在离线模式下安装量角器 - webdriver-manager启动错误 - 我做错了什么的主要内容,如果未能解决你的问题,请参考以下文章

PDF文件阅读问题仅在离线模式下快速

steam离线模式很多人玩一个账号存档会冲突吗

使用 gps 在离线模式下显示当前位置

如何在离线模式下使用 WorldWind Android 应用程序

如何在离线模式下使用 Cordova Geolocation 插件

reverseGeocodeLocation(_ location: CLLocation) 方法是不是在离线模式下工作?