問題描述
您好,任何人都知道發生了什么或如何調試錯誤,如下所示.我所做的步驟是使用設置集線器命令并將節點注冊到集線器.在命令注冊節點之后.我可以看到日志為
Hi anyone know what is going on or how I can debug the error as following. the step I did is using setup hub command and register node to hub. after the command register node. I can see the log as
The node is registered to the hub and ready to use
但是,當我運行測試腳本時,我的錯誤打印為:
However when I run the test script I have error print up as:
selenium.common.exceptions.SessionNotCreatedException: Message: Unable to create new service: ChromeDriverService
二進制版本:
- selenium 獨立版本:3.14.0
- selenium 遠程驅動版本:selenium==3.14.1
- python 版本:3.6.4
腳本:
import os
from selenium import webdriver
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
driver = webdriver.Remote(command_executor='http://localhost:4444/wd/hub',
desired_capabilities=DesiredCapabilities.CHROME)
設置中心:
#java -jar /Users/admin/selenium-server-standalone-3.14.0.jar -host localhost -role hub
注冊節點:
#java -jar /Users/admin/selenium-server-standalone-3.14.0.jar -role node
錯誤:
E selenium.common.exceptions.SessionNotCreatedException: Message: Unable to create new service: ChromeDriverService
E Build info: version: '3.14.0', revision: 'aacccce0', time: '2018-08-02T20:13:22.693Z'
E Driver info: driver.version: unknown
E Stacktrace:
E at org.openqa.selenium.remote.server.ServicedSession$Factory.lambda$get$0 (ServicedSession.java:134)
E at org.openqa.selenium.remote.server.ServicedSession$Factory.apply (ServicedSession.java:151)
E at org.openqa.selenium.remote.server.ActiveSessionFactory.lambda$apply$12 (ActiveSessionFactory.java:177)
E at java.util.stream.ReferencePipeline$3$1.accept (ReferencePipeline.java:193)
...
E at java.util.concurrent.Executors$RunnableAdapter.call (Executors.java:511)
E at java.util.concurrent.FutureTask.run (FutureTask.java:266)
E at java.util.concurrent.ThreadPoolExecutor.runWorker (ThreadPoolExecutor.java:1142)
E at java.util.concurrent.ThreadPoolExecutor$Worker.run (ThreadPoolExecutor.java:617)
E at java.lang.Thread.run (Thread.java:745)
../lib/python3.6/site-packages/selenium/webdriver/remote/errorhandler.py:242: SessionNotCreatedException
推薦答案
這個錯誤信息...
selenium.common.exceptions.SessionNotCreatedException: Message: Unable to create new service: ChromeDriverService
...暗示 ChromeDriver 無法啟動/生成新的 ChromeDriverService.
...implies that the ChromeDriver was unable to initiate/spawn a new ChromeDriverService.
commands 和 incompatibility 在您使用的二進制文件版本之間存在幾個問題,如下所示:
There are a couple of issues in the commands and incompatibility between the version of the binaries you are using as follows:
- 您的 JDK 版本是 1.8.0_91,非常古老.
- 將 JDK 升級到最新級別 JDK 8u181.
要注冊一個Selenium Grid Hub,您需要使用以下命令:
- Your JDK version is 1.8.0_91 which is pretty ancient.
- Upgrade JDK to recent levels JDK 8u181.
To register a Selenium Grid Hub you need to use the following command:
>java -jar /Users/admin/selenium-server-standalone-3.14.0.jar -role hub
要為ChromeDriver和Chrome注冊一個Selenium Grid Node,你需要傳遞ChromeDriver的絕對路徑 以及 Registration URI 的 Key 和 Value 如下:
To register a Selenium Grid Node for ChromeDriver and Chrome you need to pass the absolute path of the ChromeDriver along with the Key and Value of the Registration URI as follows:
>java -Dwebdriver.chrome.driver=/path/to/chromedriver.exe -jar /Users/admin/selenium-server-standalone-3.14.0.jar -role node -hub http://<IP_GRID_HUB>:4444/grid/register
你的代碼塊在我看來不錯.
You code block looks good to me.
這篇關于SessionNotCreatedException:消息:無法創建新服務:通過 Python 使用 ChromeDriver 和 SeleniumGrid 的 ChromeDriverService的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!