Сеанс Firefox не запускается с использованием удаленного драйвера сетки селена - невозможно найти соответствующий набор возможностей
Java .version: '12.0.1'
Сервер Селена Информация о сборке: версия: '3.141.59'
версия Firefox = 68
версия Python = Python 3.7.2
Я пытаюсь запустить firefox на сетке селена и получаю следующую ошибку: selenium.common.exceptions.SessionNotCreatedException: Сообщение: невозможно найти соответствующий набор возможностей Информация о сборке: версия: '3.141.59', версия: 'e82be7d358', время: '2018-11-14T08:25:53' Системная информация: хост: '*****', ip: '******', имя os.name: 'Windows 8.1', архив os.arch: 'amd64', os.version: '6.3', java.version: '12.0.1' Информация о драйвере: driver.version: неизвестно
Вот как я настроил сетку:
java -jar selenium-server-standalone-3.141.59.jar -port 4444 -role hub
во втором окне cmd я инициирую узел Firefox, как это так
java -Dwebdriver.gecko.driver=C:\Selenium\geckodriver.exe -jar selenium-server-standalone-3.141.59.jar -port 5557 -role узел -browser "browserName=firefox,platform=WINDOWS,maxInstances=1"
Я попробовал несколько вариантов возможностей, включая использование более подробных как из файла json (список возможностей), так и в моем скрипте python для настройки узла firefox, но я все еще получаю ту же ошибку.
Это мой код скрипта Python:
from selenium import webdriver
from selenium.webdriver.firefox.firefox_binary import FirefoxBinary
from selenium.webdriver.common.desired_capabilities import DesiredCapabilities
cap = DesiredCapabilities.FIREFOX.copy()
cap['browserName'] = 'firefox'
cap['platform'] = "WINDOWS"
driver = webdriver.Remote(command_executor='http://localhost:4444/wd/hub',
desired_capabilities=cap)
driver.get("https://www.google.co.in/")
print(driver.title)
driver.quit()
Я также получаю удаленную ошибку трассировки стека, как это в моем окне cmd:
remote stacktrace:
Stacktrace:
at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0 (NativeConstructorAccessorImpl.java:-2)
at jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance (NativeConstructorAccessorImpl.java:62)
at jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance (DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstanceWithCaller (Constructor.java:500)
at java.lang.reflect.Constructor.newInstance (Constructor.java:481)
at org.openqa.selenium.remote.W3CHandshakeResponse.lambda$errorHandler$0 (W3CHandshakeResponse.java:62)
at org.openqa.selenium.remote.HandshakeResponse.lambda$getResponseFunction$0 (HandshakeResponse.java:30)
at org.openqa.selenium.remote.ProtocolHandshake.lambda$createSession$0 (ProtocolHandshake.java:126)
at java.util.stream.ReferencePipeline$3$1.accept (ReferencePipeline.java:195)
at java.util.Spliterators$ArraySpliterator.tryAdvance (Spliterators.java:958)
at java.util.stream.ReferencePipeline.forEachWithCancel (ReferencePipeline.java:127)
at java.util.stream.AbstractPipeline.copyIntoWithCancel (AbstractPipeline.java:502)
at java.util.stream.AbstractPipeline.copyInto (AbstractPipeline.java:488)
at java.util.stream.AbstractPipeline.wrapAndCopyInto (AbstractPipeline.java:474)
at java.util.stream.FindOps$FindOp.evaluateSequential (FindOps.java:150)
at java.util.stream.AbstractPipeline.evaluate (AbstractPipeline.java:234)
at java.util.stream.ReferencePipeline.findFirst (ReferencePipeline.java:543)
at org.openqa.selenium.remote.ProtocolHandshake.createSession (ProtocolHandshake.java:128)
at org.openqa.selenium.remote.ProtocolHandshake.createSession (ProtocolHandshake.java:74)
at org.openqa.selenium.grid.session.remote.RemoteSession$Factory.performHandshake (RemoteSession.java:147)
at org.openqa.selenium.grid.session.remote.ServicedSession$Factory.apply (ServicedSession.java:161)
at org.openqa.selenium.remote.server.ActiveSessionFactory.lambda$apply$12 (ActiveSessionFactory.java:180)
at java.util.stream.ReferencePipeline$3$1.accept (ReferencePipeline.java:195)
at java.util.stream.ReferencePipeline$11$1.accept (ReferencePipeline.java:442)
at java.util.stream.ReferencePipeline$2$1.accept (ReferencePipeline.java:177)
at java.util.Spliterators$ArraySpliterator.tryAdvance (Spliterators.java:958)
Это довольно долго... Я могу приложить остальное к вопросу, если требуется...
1 ответ
Я бы порекомендовал перейти на Java 8 и использовать файл config.json для вашего узла следующим образом:
{
"capabilities": [
{
"browserName": "firefox",
"platform": "WIN7",
"maxInstances": 5
}
],
"hub": "http://<hub ip>:<hub port>"
}