Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/selenium/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Selenium 在脱机模式下安装的量角器-webdriver manager启动错误-我做错了什么_Selenium_Selenium Webdriver_Protractor - Fatal编程技术网

Selenium 在脱机模式下安装的量角器-webdriver manager启动错误-我做错了什么

Selenium 在脱机模式下安装的量角器-webdriver manager启动错误-我做错了什么,selenium,selenium-webdriver,protractor,Selenium,Selenium Webdriver,Protractor,我需要在没有互联网接入的机器上安装和使用量角器/Selenium 为此,我尝试下载所有需要的文件并将它们复制到目标计算机 在我的机器上(可访问互联网) 我使用以下命令安装并安装了Selenium webdriver: npm install -g protractor webdriver-manager update 在目标计算机上(无互联网接入) 我将所有文件从npm config get prefix返回的位置复制到计算机上,而不访问Internet 然后,我在没有Internet访问

我需要在没有互联网接入的机器上安装和使用量角器/Selenium

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


在我的机器上(可访问互联网)

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

npm install -g protractor
webdriver-manager update

在目标计算机上(无互联网接入)

我将所有文件从
npm config get prefix
返回的位置复制到计算机上,而不访问Internet

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

npm——缓存最小9999999安装-g量角器

这似乎成功了

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

events.js:183 投掷者;//未处理的“错误”事件 ^

错误: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
时收到相同的错误(如本例所示:)

问题


我做错了什么?如何在没有Internet访问的机器上正确设置量角器和webdriver?

因为
webdriver manager start
将通过Internet查找selenium-server.jar和webdriver二进制文件的最新版本号,无论它们在本地计算机上是否已经存在

但是
webdriver管理器
不提供cmd选项来禁用查找

快速的方法是直接在
webdriver manager start
后面运行javacmd来跳过查找

爪哇 -Dwebdriver.chrome.driver=C:\Tools\npm global\node\u modules\webdriver manager\selenium\chromedriver\u 2.38.exe -Dwebdriver.gecko.driver=C:\Tools\npm global\node\u modules\webdriver manager\selenium\geckodriver-v0.20.1.exe -jar C:\Tools\npm global\node\u modules\webdriver manager\selenium\selenium-server-standalone-3.11.0.jar -4444端口


复杂的方法是更改
webdriver manager
code或在本地设置镜像,然后使用cmd选项:
--alternate\u cdn
,并将其指向本地镜像url。(我没有验证这是否可行,请在阅读一些源代码后获取)

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

但是
webdriver管理器
不提供cmd选项来禁用查找

快速的方法是直接在
webdriver manager start
后面运行javacmd来跳过查找

爪哇 -Dwebdriver.chrome.driver=C:\Tools\npm global\node\u modules\webdriver manager\selenium\chromedriver\u 2.38.exe -Dwebdriver.gecko.driver=C:\Tools\npm global\node\u modules\webdriver manager\selenium\geckodriver-v0.20.1.exe -jar C:\Tools\npm global\node\u modules\webdriver manager\selenium\selenium-server-standalone-3.11.0.jar -4444端口


复杂的方法是更改
webdriver manager
code或在本地设置镜像,然后使用cmd选项:
--alternate\u cdn
,并将其指向本地镜像url。(我没有验证这是否可行,请阅读一些源代码后获取)

您的机器是否在任何代理下运行?您的机器是否在任何代理下运行?如果我们使用
directConnect
,应该可以克服启动
webdriver manager
的问题,对吗?@demouser123,您是对的。当
directConnect=true
时,量角器将首先自动启动chromedriver二进制文件。二进制运行进程将启动一个地址为
http://localhost:34562
(端口是随机的),测试将使用此地址作为seleniumAddress@yong它似乎可以工作,但我想知道是否有办法
很好地关闭/退出/关闭selenium服务器,
webdriver-manager shutdown
命令的对应项?如果我们使用
directConnect
,应该可以克服启动
webdriver-manager
对吗?@demouser123,你是对的。当
directConnect=true
时,量角器将首先自动启动chromedriver二进制文件。二进制运行进程将启动一个地址为
http://localhost:34562
(端口是随机的),测试将使用此地址作为seleniumAddress@yong它似乎可以工作,但我想知道是否有办法
很好地关闭/退出/关闭selenium服务器,
webdriver-manager shutdown
命令的对应项?