У меня проблемы с подключением селена webdriver к Firefox с использованием GeckoDriver.
Моя версия Firefox - Mozilla Firefox 52.8.1
pom.xml
<properties>
<selenium.version>3.3.0</selenium.version>
</properties>
<!-- Selenium -->
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-firefox-driver</artifactId>
<version>${selenium.version}</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-support</artifactId>
<version>${selenium.version}</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-java</artifactId>
<version>${selenium.version}</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-remote-driver</artifactId>
<version>${selenium.version}</version>
</dependency>
<dependency>
<groupId>org.seleniumhq.selenium</groupId>
<artifactId>selenium-api</artifactId>
<version>${selenium.version}</version>
</dependency>
Команда для запуска концентратора -
/data1/jdk-8u131-linux-x64/jdk1.8.0_131/bin/java -jar $BUILD_REPOSITORY/org/seleniumhq/seleniuselenium-server-standalone/3.141.5/selenium-server-standalone-3.141.5.jar -role hub -port 4444
Команда для запуска узла -
/usr/java64/jre1.8.0_181-amd64/bin/java -Dwebdriver.gecko.driver=/usr/g/ctuser/geckodriver -jar selenium-server-standalone-3.141.5.jar -role node -huhttp://3.57.51.87:4444/grid/register -host 3.231.15.68
GeckoDriver - geckodriver-v0.15.0-linux64.tar.gz
Тестовый код -
public static void main(String[] args) {
System.setProperty("webdriver.gecko.driver", "/export/data1/selenium/geckodriver");
DesiredCapabilities firefox = DesiredCapabilities.firefox();
firefox.setBrowserName("firefox");
firefox.setPlatform(Platform.UNIX);
RemoteWebDriver remoteDriver = new RemoteWebDriver(firefox);
remoteDriver.get("http://localhost:7005/");
System.out.println(remoteDriver.getTitle());
remoteDriver.quit();
}
Получение исключения -
Исключение в теме "главная"
org.openqa.selenium.SessionNotCreatedException: невозможно создать новый
удаленный сеанс желаемые возможности = возможности {browserName:
firefox, марионетка: есть, платформа: UNIX, версия:} Информация о сборке:
версия: '3.141.5', редакция: 'd54ebd709a', время:
'2018-11-06T11: 58: 47' Информация о системе: хост: 'liblab8.site', ip:
'3.231.15.68', os.name: 'Linux', os.arch: 'amd64', os.version:
'3.0.101-0.47.106.35.1.15690.0.PTF-default', java.version: '1.8.0_181'
Информация о драйвере: driver.version: неизвестно Продолжительность или время ожидания команды: 0
миллисекунды в
sun.reflect.NativeConstructorAccessorImpl.newInstance0 (собственный метод)
в
sun.reflect.NativeConstructorAccessorImpl.newInstance (NativeConstructorAccessorImpl.java:62)
в
sun.reflect.DelegatingConstructorAccessorImpl.newInstance (DelegatingConstructorAccessorImpl.java:45)
в java.lang.reflect.Constructor.newInstance (Constructor.java:423)
в
org.openqa.selenium.remote.ErrorHandler.createThrowable (ErrorHandler.java:216)
в
org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed (ErrorHandler.java:168)
в
org.openqa.selenium.remote.ProtocolHandshake.createSession (ProtocolHandshake.java:363)
в
org.openqa.selenium.remote.ProtocolHandshake.createSession (ProtocolHandshake.java:113)
в
org.openqa.selenium.remote.HttpCommandExecutor.execute (HttpCommandExecutor.java:141)
в
org.openqa.selenium.remote.RemoteWebDriver.execute (RemoteWebDriver.java:604)
в
org.openqa.selenium.remote.RemoteWebDriver.startSession (RemoteWebDriver.java:244)
в
org.openqa.selenium.remote.RemoteWebDriver. (RemoteWebDriver.java:131)
в
org.openqa.selenium.remote.RemoteWebDriver. (RemoteWebDriver.java:158)
в
org.openqa.selenium.remote.RemoteWebDriver. (RemoteWebDriver.java:148)
at com.ge.test.Test1.main (Test1.java:16) Причина:
org.openqa.selenium.SessionNotCreatedException: невозможно создать новый
удаленный сеанс желаемые возможности = возможности {browserName:
firefox, марионетка: есть, платформа: UNIX, версия:} Информация о сборке:
версия: '3.141.5', редакция: 'd54ebd709a', время:
'2018-11-06T11: 58: 47' Информация о системе: хост: 'liblab8.site', ip:
'3.231.15.68', os.name: 'Linux', os.arch: 'amd64', os.version:
'3.0.101-0.47.106.35.1.15690.0.PTF-default', java.version: '1.8.0_181'
Информация о драйвере: driver.version: неизвестно Информация о сборке: версия: '3.3.0',
редакция: 'b526bd5b41', время: '2017-03-07 19:26:04 +0000' Информация о системе:
хост: 'ctwdof067.am.health.ge.com', ip: 3.57.51.87, os.name:
'Linux', os.arch: 'amd64', os.version: '3.0.101-0.40-default',
java.version: '1.8.0_131' Информация о драйвере: driver.version: неизвестно в
org.openqa.selenium.remote.ProtocolHandshake.createSession (ProtocolHandshake.java:87)
в
org.openqa.selenium.grid.session.remote.RemoteSession $ Factory.performHandshake (RemoteSession.java:147)
в
org.openqa.selenium.grid.session.remote.ServicedSession $ Factory.apply (ServicedSession.java:161)
в
org.openqa.selenium.remote.server.ActiveSessionFactory.lambda $ применять $ 12 (ActiveSessionFactory.java:180)
на java.util.stream.ReferencePipeline $ 3 $ 1.accept (неизвестный источник) на
java.util.stream.ReferencePipeline $ 11 $ 1.accept (неизвестный источник) в
java.util.stream.ReferencePipeline $ 2 $ 1.accept (неизвестный источник) в
java.util.Spliterators $ ArraySpliterator.tryAdvance (неизвестный источник) вjava.util.stream.ReferencePipeline.forEachWithCancel (неизвестный источник)
в java.util.stream.AbstractPipeline.copyIntoWithCancel (Неизвестно
Источник) в java.util.stream.AbstractPipeline.copyInto (Неизвестный источник)
в java.util.stream.AbstractPipeline.wrapAndCopyInto (Неизвестный источник)
в java.util.stream.FindOps $ FindOp.evaluateSequential (Неизвестный источник)
в java.util.stream.AbstractPipeline.evaluate (Неизвестный источник) в
java.util.stream.ReferencePipeline.findFirst (неизвестный источник) в
org.openqa.selenium.remote.server.ActiveSessionFactory.apply (ActiveSessionFactory.java:183)
в
org.openqa.selenium.remote.server.NewSessionPipeline.lambda $ нулевой $ 2 (NewSessionPipeline.java:66)
на java.util.stream.ReferencePipeline $ 3 $ 1.accept (неизвестный источник) на
java.util.stream.ReferencePipeline $ 2 $ 1.accept (неизвестный источник) в
java.util.Collections $ 2.tryAdvance (неизвестный источник) в
java.util.stream.ReferencePipeline.forEachWithCancel (неизвестный источник)
в java.util.stream.AbstractPipeline.copyIntoWithCancel (Неизвестно
Источник) в java.util.stream.AbstractPipeline.copyInto (Неизвестный источник)
в java.util.stream.AbstractPipeline.wrapAndCopyInto (Неизвестный источник)
в java.util.stream.FindOps $ FindOp.evaluateSequential (Неизвестный источник)
в java.util.stream.AbstractPipeline.evaluate (Неизвестный источник) в
java.util.stream.ReferencePipeline.findFirst (неизвестный источник) в
org.openqa.selenium.remote.server.NewSessionPipeline.lambda $ createNewSession $ 3 (NewSessionPipeline.java:69)
на java.util.stream.ReferencePipeline $ 3 $ 1.accept (неизвестный источник) на
java.util.stream.ReferencePipeline $ 3 $ 1.accept (неизвестный источник) в
java.util.stream.ReferencePipeline $ 3 $ 1.accept (неизвестный источник) в
java.util.stream.DistinctOps $ 1 $ 2.accept (неизвестный источник) в
java.util.stream.ReferencePipeline $ 2 $ 1.accept (неизвестный источник) в
java.util.stream.ReferencePipeline $ 3 $ 1.accept (неизвестный источник) в
java.util.stream.ReferencePipeline $ 2 $ 1.accept (неизвестный источник) в
java.util.stream.Streams $ StreamBuilderImpl.tryAdvance (неизвестный источник)
в java.util.stream.Streams $ ConcatSpliterator.tryAdvance (Неизвестно
Источник) в
java.util.stream.ReferencePipeline.forEachWithCancel (неизвестный источник)
в java.util.stream.AbstractPipeline.copyIntoWithCancel (Неизвестно
Источник) в java.util.stream.AbstractPipeline.copyInto (Неизвестный источник)
в java.util.stream.AbstractPipeline.wrapAndCopyInto (Неизвестный источник)
в java.util.stream.FindOps $ FindOp.evaluateSequential (Неизвестный источник)
в java.util.stream.AbstractPipeline.evaluate (Неизвестный источник) в
java.util.stream.ReferencePipeline.findFirst (неизвестный источник) в
org.openqa.selenium.remote.server.NewSessionPipeline.createNewSession (NewSessionPipeline.java:72)
в
org.openqa.selenium.remote.server.commandhandler.BeginSession.execute (BeginSession.java:65)
в
org.openqa.selenium.remote.server.WebDriverServlet.lambda $ обращаться $ 0 (WebDriverServlet.java:235)
в java.util.concurrent.Executors $ RunnableAdapter.call (Неизвестно
Источник) в java.util.concurrent.FutureTask.run (Неизвестный источник) в
java.util.concurrent.ThreadPoolExecutor.runWorker (неизвестный источник) в
java.util.concurrent.ThreadPoolExecutor $ Worker.run (неизвестный источник) в
java.lang.Thread.run (неизвестный источник)
Консоль концентратора -
01: 47: 49.231 INFO [RequestHandler.process] - Получен запрос на создание
новый сеанс: Возможности {browserName: firefox, marionette: true,
платформа: UNIX, версия:} 01: 47: 49.232 INFO [TestSlot.getNewSession]
- Попытка создать новый сеанс в тестовом слоте {сервер: CONFIG_UUID = e18d691a-1d36-4b44-8526-777d4443d078,
seleniumProtocol = WebDriver, marionette = true, browserName = firefox,
maxInstances = 5, имя_платформы = LINUX, платформа = LINUX}
Узел консоли -
01: 43: 34.137 INFO [ActiveSessionFactory.apply] - Возможности: {
"browserName": "firefox", "marionette": true, "platform": "UNIX",
"version": ""} 01: 43: 34.137 INFO
[ActiveSessionFactory.lambda $ apply $ 11] - соответствует фабрике
org.openqa.selenium.grid.session.remote.ServicedSession $ Factory
(поставщик: org.openqa.selenium.firefox.GeckoDriverService)
1542008614143 geckodriver INFO Прослушивание 127.0.0.1:43589
1542008614199 mozprofile :: информация профиля Использование пути к профилю
/tmp/rust_mozprofile.bGje3sR6MQxe
1542008614199 geckodriver :: марионетка INFO Запуск браузера
/ usr / bin / firefox с аргументами []
1542008614201 geckodriver :: марионетка INFO Подключение к марионетке на
localhost: 56293 1542008615126 Марионетка INFO Прослушивание порта 56293
NPP_GetValue () NPP_GetValue () NPP_GetValue () NPP_GetValue ()
Я не понимаю, что здесь происходит. Пожалуйста, помогите