我使用以下命令安装量角器:
npm install -g量角器,
webdriver-manager更新,
webdriver-manager启动,
在安装此Webdriver Manager之后运行正常。然后由于某种原因,我认为我需要独立的硒服务器。所以我使用以下命令安装它:
npm install selenium-standalone @ latest -g selenium-standalone安装 硒独立启动
现在,如果我运行webdriver-manager start或selenium -standalone start中的任何一个,则会收到这些错误。我不能同时运行两个。
I/start - java -Dwebdriver.chrome.driver=/usr/local/lib/node_modules/protractor/node_modules/webdriver-manager/selenium/chromedriver_2.41 -Dwebdriver.gecko.driver=/usr/local/lib/node_modules/protractor/node_modules/webdriver-manager/selenium/geckodriver-v0.21.0 -jar /usr/local/lib/node_modules/protractor/node_modules/webdriver-manager/selenium/selenium-server-standalone-3.13.0.jar -port 4444
[10:17:56] I/start - seleniumProcess.pid: 39645
10:17:57.250 INFO [GridLauncherV3.launch] - Selenium build info: version: '3.13.0', revision: '2f0d292'
10:17:57.251 INFO [GridLauncherV3$1.launch] - Launching a standalone Selenium Server on port 4444
2018-08-02 10:17:57.408:INFO::main: Logging initialized @612ms to org.seleniumhq.jetty9.util.log.StdErrLog
10:17:57.589 ERROR [SeleniumServer.boot] - Port 4444 is busy, please choose a free port and specify it using -port option
[10:17:57] I/start - Selenium Standalone has exited with code 0.
如果有人知道原因,请告诉我。
答案 0 :(得分:3)
因为由webdriver-manager start
在默认端口4444上启动的硒服务器仍在运行,而不是终端。
因此,当您在未指定端口的情况下执行webdriver-manager start
或selenium -standalone start
时,它将尝试再次在4444上启动另一个硒服务器,该服务器被先前的硒服务器使用。这就是为什么您得到Port 4444 is busy
您可以找到硒服务器的进程并将其杀死,以释放端口4444,或者为webdriver-manager start
或selenium -standalone start
将该端口指定为其他编号
尝试webriver-manager shutdown
停止硒服务器。
并且webdriver-manager update
将安装selenium-server-standalone.jar,因此您无需安装selenium-standalone
来帮助安装selenium-server-standalone.jar。
答案 1 :(得分:2)
尝试以下操作来杀死该端口上的所有内容:
kill -9 $(lsof -ti tcp:4444)
如果命令 webriver-manager 关闭不起作用。
答案 2 :(得分:1)
只需在另一个端口上启动selenium独立服务器: 例如:
C:\Users\username\Desktop\Essentials\SeleniumStandaloneJars>java -jar selenium-server-standalone-3.11.0.jar -port 8090
希望对您有帮助。
答案 3 :(得分:1)
在运行量角器测试时遇到了这个问题。 以下两种解决方案对我有用
1)通过以下命令停止服务器。 http://localhost:4444/selenium-server/driver/?cmd=shutDownSeleniumServer
2)取消注释seleniumAddress:'http://localhost:4444/wd/hub 保存并运行测试。
In case-2: Selenium web driver starts running by default on start running the protractor tests.
答案 4 :(得分:1)
使用以下命令通过更改端口号来启动服务器
java- Dwebdriver.chrome.driver = C:\ Users \ chromedriver_path \ chromedriver_2.45.exe -Dwebdriver.gecko.driver = C:\ Users \ geckodriver_path \ geckodriver-v0.23.0.exe -jar C:\ Users \ selenium_server_jar_path \ selenium-server-standalone-3.141.59.jar 端口4446
请根据您的系统配置更改路径 [此解决方案适用于Windows计算机]
答案 5 :(得分:0)
您可以输入控制台(Windows为cmd)
webdriver-manager
,它将为您提供Selenium Standalone服务器的选项列表。如果要更改端口,请使用--seleniumPort选项,
webdriver-manager start --seleniumPort 12345
这会将您的端口更改为12345,因此Selenium Server将在端口12345而不是4444上启动。
希望它会为您提供帮助。
答案 6 :(得分:0)
如果您使用的是Windows:
在使用npm时,一个简单的解决方案是安装
$ npm install --global kill-port
然后您可以致电
$ kill-port --port 4444
在运行测试之前。
如果您使用的是Mac或Linux,则可以使用pkill -f selenium-standalone
答案 7 :(得分:0)
如果您正在LinkedIn上关注Megan Lewis课程,则应指定自己的端口
java -jar .\selenium-server-standalone-3.141.59.jar -role hub -port 5555 (choose your number)