#testcontainers
Вопрос:
Добрый день!
Я только начинаю использовать testcontainers. В связи с этим возник ряд вопросов. ошибка при запуске в chrome
10:27:50.632 INFO - Executing: [new session: Capabilities [{loggingPrefs=org.openqa.selenium.logging.LoggingPreferences@2a0e7630, javascriptEnabled=true, acceptSslCerts=true, browserName=chrome, webdriver.chrome.driver=[--ignore-ssl-errors=true], goog:chromeOptions={useAutomationExtension=true, args=[--ignore-certificate-errors, --no-sandbox], extensions=[]}, takesScreenshot=true, acceptInsecureCerts=true}]])
10:27:50.644 INFO - Creating a new session for Capabilities [{loggingPrefs=org.openqa.selenium.logging.LoggingPreferences@2a0e7630, javascriptEnabled=true, acceptSslCerts=true, browserName=chrome, webdriver.chrome.driver=[--ignore-ssl-errors=true], goog:chromeOptions={useAutomationExtension=true, args=[--ignore-certificate-errors, --no-sandbox], extensions=[]}, takesScreenshot=true, acceptInsecureCerts=true}]
Starting ChromeDriver 2.14.313457 (3d645c400edf2e2c500566c9aa096063e707c9cf) on port 14181
Only local connections are allowed.
[0.081][WARNING]: PAC support disabled because there is no system implementation
org.testcontainers.containers.ContainerLaunchException: Container startup failed
at org.testcontainers.containers.GenericContainer.doStart(GenericContainer.java:334)
at org.testcontainers.containers.GenericContainer.start(GenericContainer.java:315)
at ru.sbtqa.ufs.ui.stepdefinitions.BeforeTestUI.beforeclass(BeforeTestUI.java:57)
at ru.sbtqa.ufs.ui.stepdefinitions.BeforeTestUI.setUp(BeforeTestUI.java:75)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at cucumber.runtime.Utils$1.call(Utils.java:26)
at cucumber.runtime.Timeout.timeout(Timeout.java:16)
at cucumber.runtime.Utils.invoke(Utils.java:20)
at cucumber.runtime.java.JavaHookDefinition.execute(JavaHookDefinition.java:60)
at cucumber.runner.HookDefinitionMatch.runStep(HookDefinitionMatch.java:16)
at cucumber.runner.TestStep.executeStep(TestStep.java:65)
at cucumber.runner.TestStep.run(TestStep.java:50)
at cucumber.runner.TestCase.run(TestCase.java:42)
at cucumber.runner.Runner.runPickle(Runner.java:50)
at cucumber.runtime.junit.PickleRunners$NoStepDescriptions.run(PickleRunners.java:146)
at cucumber.runtime.junit.FeatureRunner.runChild(FeatureRunner.java:68)
at cucumber.runtime.junit.FeatureRunner.runChild(FeatureRunner.java:23)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
at cucumber.runtime.junit.FeatureRunner.run(FeatureRunner.java:73)
at cucumber.api.junit.Cucumber.runChild(Cucumber.java:126)
at cucumber.api.junit.Cucumber.runChild(Cucumber.java:66)
at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
at cucumber.api.junit.Cucumber$RunCucumber.evaluate(Cucumber.java:156)
at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:89)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:41)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:541)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:763)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:463)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:209)
Caused by: org.rnorth.ducttape.RetryCountExceededException: Retry limit hit with exception
at org.rnorth.ducttape.unreliables.Unreliables.retryUntilSuccess(Unreliables.java:88)
at org.testcontainers.containers.GenericContainer.doStart(GenericContainer.java:327)
... 41 more
Caused by: org.testcontainers.containers.ContainerLaunchException: Could not create/start container
at org.testcontainers.containers.GenericContainer.tryStart(GenericContainer.java:523)
at org.testcontainers.containers.GenericContainer.lambda$doStart$0(GenericContainer.java:329)
at org.rnorth.ducttape.unreliables.Unreliables.retryUntilSuccess(Unreliables.java:81)
... 42 more
Caused by: org.rnorth.ducttape.TimeoutException: org.rnorth.ducttape.TimeoutException: java.util.concurrent.TimeoutException
Стандартный код
BrowserWebDriverContainer<?> контейнер = новый BrowserWebDriverContainer<?><>() .С возможностями(новые функции FirefoxOptions()) .С режимом записи(VncRecordingMode.RECORD_ALL, новый файл(«цель»), VncRecordingFormat.MP4) .withStartupTimeout(Продолжительность.минут(10)).withNetwork(Сеть.Новая сеть());
- Можно ли использовать только браузеры chrome и FireFox? яндекс и egde недоступны?
Комментарии:
1. Ух ты, парень, я сейчас переживаю нечто подобное. Вы выполняете тест в контейнере? Вам нужен браузер (Chrome и Firefox устанавливаются для меня, edge выходит из строя), java jre и, конечно, веб-драйверы для вашего браузера (chrome или chrome без головы). Также убедитесь, что на этом пути нет аутентификации.
2. Пожалуйста, попробуйте разделить ваши вопросы на несколько отдельных вопросов и добавьте пример кода для вашего второго вопроса.
3. Я не работаю в контейнере
public static target BrowserWebDriverContainer <?> container = new BrowserWebDriverContainer <> () .withCapabilities (en.sbtqa.tag.pagefactory.drivers.Capabilities.getFirefoxOptions ()) .withRecordingMode (VncRecordingMode.RECORD_ALL, new file ("target"), VncRecordingFormat.MP4) .withStartupTimeout (Duration.ofMinutes (2)). withNetwork (Network.newNetwork ()); container.start();
, работает только в firefox. В chrome возникает ошибка4. через драйвер все работает для меня в любом браузере. Я хотел бы и через testcontainers