我是量角器的新手。尝试使用量角器
运行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
我检查了是否有其他进程正在侦听端口4444,但没有找到任何进程。我也正在使用--standalone标志运行web驱动程序。
答案 0 :(得分:16)
似乎selenium服务器没有在http://127.0.0.1:4444/wd/hub
上运行。在运行量角器测试之前,必须使用以下命令启动selenium服务器。webdriver-manager start
。启动服务器后,您的测试将毫无错误地执行。
如果您不想手动启动selenium服务器,请从conf.js中删除seleniumAddress:http://localhost:4444/wd/hub
属性。
答案 1 :(得分:4)
您还可以将这些行添加到conf.js
文件中:
chromeOnly: true,
directConnect: true,
答案 2 :(得分:1)
启动webdriver,在开始执行自动化测试套件之前,通过在控制台屏幕中执行以下命令,可以更新Web驱动程序并启动Web驱动程序。
webdriver-manager update
webdriver-manager start
答案 3 :(得分:1)
通过以下命令检查您的网络驱动程序状态
webdriver-manager status
如果它不是最新的,您可以按照以下步骤删除和安装它
webdriver-manager clean
webdriver-manager status
webdriver-manager update
webdriver-manager start
然后通过
启动您的网络驱动程序如果您收到此错误
ERROR [BaseServer.start] - Port 4444 is busy, please choose a free port and specify it using -port option
您可以通过此命令设置另一个端口(例如端口 4545)
webdriver-manager start --seleniumPort 4545
然后你的 selenium 网络驱动程序将运行
答案 4 :(得分:0)
您是否为要测试的浏览器安装了selenium驱动程序? 试试
webdriver-manager update
它将负责为您安装驱动程序。您只需要运行一次,如果再次调用它,它将看到驱动程序已经安装且不会继续运行。
答案 5 :(得分:0)
您是否使用此命令webdriver-manager start
启动了selenium服务器?
如果不是,您的配置可能与selenium服务器有问题。
我建议follow this thread
解决方案1
webdriver-manager update --standalone
解决方案2
答案 6 :(得分:0)
我也遇到了这种类型的错误,但在设置环境变量之后,这个问题就解决了。 npm的位置; 例: C:\用户\应用程序数据\漫游\ NPM
答案 7 :(得分:0)
在本地运行directConnect
时,protractor
解决方案很不错,但在尝试在Jenkins上执行时,它不起作用。看起来在Jenkins的Docker容器中运行所有内容时,您必须首先以分离模式webdriver-manager start
启动-d
,等待,然后启动protractor
。
答案 8 :(得分:-1)
我以管理员身份运行Windows命令提示符并解决了这个问题。我不再看到这个问题了。 我还添加了
chromeOnly: true,
directConnect: true,