Selenium на Docker: SSLHandshakeException:> sun.security.validator.ValidatorException: сбой построения пути PKIX: - PullRequest
0 голосов
/ 08 марта 2019

Мы установили 3 докера селеновых контейнера

a.Селеновый хаб

б.Selenium Grid - Firefox

c.Selenium Grib - Chrome

Мы пытаемся сделать полную реализацию SSL для этой настройки.Вот что мы сделали до сих пор:

Установил http-сервер Apache на тот же ящик Linux и включил SSL на нем, а затем сопоставил порт 4444 концентратора селена с портом apache 8443 (на котором мы уже включили SSL),

Сначала казалось, что это сработало, так как мы смогли открыть концентратор селена с помощью https URL, но когда мы запускаем тест селена, он завершается с ошибкой ниже.Тем не менее, тест работает нормально, когда мы используем http url.

Поток связи: 8443 Apache (SSL) ----> 4444 Selenium hub (не-SSL) ------> Сетки (NON-ssl)

Информация о сборке: версия: «3.4.0», редакция: «неизвестно», время: «неизвестно» Системная информация: хост: «Windows 10», os.arch: «amd64», os.version: '10 .0 ', java.version:' 1.8.0_131 'Информация о драйвере: driver.version: RemoteWebDriver в org.openqa.selenium.remote.RemoteWebDriver.execute (RemoteWebDriver.java:658) в java.lang.refle.Method.invoke (Method.java:498) в org.testng.TestRunner.run (TestRunner.java:624) в org.testng.SuiteRunner.runTest (SuiteRunner.java:359) в org.testng.SuiteRunner.runSequentially(SuiteRunner.java:354) в org.testng.SuiteRunner.privateRun (SuiteRunner.java:312) в org.testng.SuiteRunner.run (SuiteRunner.java:261) в org.testng.SuiteRunnerWorker.runSuite: SuiteRun52) в

org.apache.maven.surefire.booter.SurefireBooter.main (SurefireBooter.java:1021) Причина: javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: сбой построения пути PKIX: sun.security.provider.certpath.SunCertPathBuilderException: невозможно найти допустимый путь сертификации для запрошенной цели в sun.security.ssl.Alerts.getSSLException (Alerts.java:192) в sun.security.ssl.SSLSocketImpl.fatal (SSLSocketImpl.java:1949) в sun.security.ssl.Handshaker.fatalSE (Handshaker.java:302) в

Мы попробовали следующееКак это исправить:

  1. Установите сертификаты сервера apache (linux box сервера apache) в каждом java cacerts (хранилище ключей) на каждом контейнере Docker.

  2. Установите клиентские сертификаты (URL-адреса, которые мы тестируем через селен) в каждом cacerts.Однако это тоже не сработало.

Сейчас мы думаем о трех вариантах:

  1. Либо включите SSL на самом док-хабе.Я не очень уверен, где установить сертификаты в докере.

  2. Исправить эту проблему.

  3. Переконфигурируйте селен, чтобы игнорировать сертификаты ssl.

Любая помощь будет оценена.Спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...