Selenium webdriver Selenium webdriver退出,错误代码为135

Selenium webdriver Selenium webdriver退出,错误代码为135,selenium-webdriver,protractor,runtime-error,Selenium Webdriver,Protractor,Runtime Error,我不熟悉量角器。尝试使用量角器运行Selenium测试时出现以下错误 I/hosted - Using the selenium server at http://localhost:4444/wd/hub I/launcher - Running 1 instances of WebDriver E/launcher - Error code: 135 E/launcher - Error message: ECONNREFUSED connect ECONNREFUSED 127.0.0.1

我不熟悉量角器。尝试使用量角器运行Selenium测试时出现以下错误

I/hosted - Using the selenium server at http://localhost:4444/wd/hub
I/launcher - Running 1 instances of WebDriver
E/launcher - Error code: 135
E/launcher - Error message: ECONNREFUSED connect ECONNREFUSED 127.0.0.1:4444
E/launcher - Error: ECONNREFUSED connect ECONNREFUSED 127.0.0.1:4444
at ClientRequest.<anonymous>  (c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\http\index.js:381:15)
at emitOne (events.js:77:13)
at ClientRequest.emit (events.js:169:7)
at Socket.socketErrorListener (_http_client.js:267:9)
at emitOne (events.js:77:13)
at Socket.emit (events.js:169:7)
at emitErrorNT (net.js:1269:8)
at nextTickCallbackWith2Args (node.js:442:9)
at process._tickCallback (node.js:356:17)
From: Task: WebDriver.createSession()
at Function.createSession  (c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\lib\webdriver.js:329:24)
at Builder.build (c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node_modules\protractor\node_modules\selenium-webdriver\builder.js:458:24)
at Hosted.DriverProvider.getNewDriver (c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node_modules\protractor\built\driverProviders\driverProvider.js:37:33)
at Runner.createBrowser (c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node_modules\protractor\built\runner.js:187:43)
at c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node_modules\protractor\built\runner.js:261:30
at _fulfilled (c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node_modules\protractor\node_modules\q\q.js:834:54)
at self.promiseDispatch.done (c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node_modules\protractor\node_modules\q\q.js:863:30)
at Promise.promise.promiseDispatch (c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node_modules\protractor\node_modules\q\q.js:796:13)
at c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node_modules\protractor\node_modules\q\q.js:556:49
at runSingle (c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node_modules\protractor\node_modules\q\q.js:137:13)
E/launcher - Process exited with error code 135
I/hosted-使用位于的selenium服务器http://localhost:4444/wd/hub
I/launcher-运行WebDriver的1个实例
E/发射器-错误代码:135
E/启动器-错误消息:ECONREFUNCE connect ECONREFUNCE 127.0.0.1:4444
E/启动器-错误:ECONREFUNCE connect ECONREFUNCE 127.0.0.1:4444
在ClientRequest。(c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node\u modules\dragrator\node\u modules\selenium webdriver\http\index.js:381:15)
在emitOne(events.js:77:13)
在ClientRequest.emit(events.js:169:7)
位于Socket.socketErrorListener(_http_client.js:267:9)
在emitOne(events.js:77:13)
位于Socket.emit(events.js:169:7)
在emitErrorNT(net.js:1269:8)
在下一个TTickCallbackwith2args(node.js:442:9)
在进程中调用(node.js:356:17)
发件人:任务:WebDriver.createSession()
在Function.createSession(c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node\u modules\dragrator\node\u modules\selenium webdriver\lib\webdriver.js:329:24)
在Builder.build(c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node\u modules\dragrator\node\u modules\selenium webdriver\Builder.js:458:24)
位于Hosted.DriverProvider.getNewDriver(c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node\u modules\dragrator\builded\driverProviders\DriverProvider.js:37:33)
在Runner.createBrowser(c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node\u modules\dragrator\builded\Runner.js:187:43)
位于c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node\u modules\dragrator\builded\runner.js:261:30
完成时(c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node\u modules\dragrator\node\u modules\q\q.js:834:54)
在self.promiseDispatch.done(c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node\u modules\dragrator\node\u modules\q\q.js:863:30)
在Promise.promiseDispatch(c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node\u modules\dragrator\node\u modules\q\q.js:796:13)
位于c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node\u modules\dragrator\node\u modules\q\q.js:556:49
在runSingle上(c:\Users\SavDevService.SAVISIONLAB\AppData\Roaming\npm\node\u modules\dragrator\node\u modules\q\q.js:137:13)
E/启动器-进程退出,错误代码为135

我检查了是否有其他进程正在侦听端口4444,但没有找到任何进程。另外,我正在使用--standalone标志运行web驱动程序。

似乎selenium服务器没有在
http://127.0.0.1:4444/wd/hub
。在运行量角器测试之前,必须使用以下命令启动selenium服务器。
webdriver manager start
。启动服务器后,测试将在没有任何错误的情况下执行


如果不想手动启动selenium服务器,只需删除seleniumAddress:http://localhost:4444/wd/hubconf.js中的属性。

您还可以将以下行添加到
conf.js
文件中:

chromeOnly: true,
directConnect: true,

是否为要测试的浏览器安装了selenium驱动程序? 试一试

webdriver-manager update

它将负责为您安装驱动程序。您只需运行一次,如果再次调用它,它将看到驱动程序已安装,不会继续运行。

我已以管理员身份运行windows命令提示符,并解决了此问题。我不再看到这个问题了。 我还加了一句

chromeOnly: true,
directConnect: true,

您是否使用此命令启动selenium服务器
webdriver manager start
? 如果没有,您的selenium服务器配置可能会出现问题。 我建议

解决方案1

  • 尝试
    webdriver管理器更新--独立
  • 解决方案2

  • 从位置-C:\Users\HP\AppData\Roaming\npm\node\U modules\p rotractor\selenium删除web驱动程序的上一个实例(.jar文件)
  • 从下载selenium-server-standalone-2.45.0并替换.jar文件

  • 启动webdriver,在开始执行自动化测试套件之前,通过在控制台屏幕中执行以下命令来更新web驱动程序并启动web驱动程序是很好的

    webdriver-manager update
    webdriver-manager start
    

    我也会遇到这种类型的错误,但是在设置环境变量之后,这个问题就解决了。 npm的位置; 例子:
    C:\Users\AppData\Roaming\npm

    当在本地运行
    量角器时,
    directConnect
    解决方案很好,但在Jenkins上尝试这样做时,它不起作用。似乎在Jenkins的Docker容器中运行所有内容时,您必须先在分离模式下启动
    webdriver manager start
    ,然后等待,然后启动
    量角器
    ,通过下面的命令检查您的web驱动程序状态

     webdriver-manager status
    
    如果它不是最新的,您可以按照以下步骤删除和安装它

     webdriver-manager clean
     webdriver-manager status
     webdriver-manager update
     webdriver-manager start
    
    然后通过以下方式启动web驱动程序:

    如果你得到这个错误

       ERROR [BaseServer.start] - Port 4444 is busy, please choose a free port and specify it using -port option
    
    您可以通过此命令设置另一个端口(例如端口4545)


    然后您的selenium web驱动程序将运行

    您可以发布配置文件吗?节点和量角器的版本是什么?要么您没有运行web驱动程序,要么它被断开连接。确保selenium服务器在提到的端口id上运行-命令:“webdriver manager start”您好Farhana,我以管理员身份运行了windows命令提示符并解决了此问题。令我惊讶的是,当我在Jenkins中启动
    webdriver manager start
    时,我收到一条成功消息(
    selenium服务器已启动并运行
    )然后这个过程永远冻结。听说过吗?您需要使用
    nohup webdriver manager start
    。这是因为您正在启动selenium服务器,该服务器在您停止进程之前不会结束。所以为了避免这种情况,您需要启动selenium服务器作为后台进程。不幸的是,在Jenkins管道中,我得到了非常相同的行为。我将尝试并行化这些任务。
     webdriver-manager start --seleniumPort 4545