Serenity BDD / Selenium Test работает 6 из 10 - PullRequest
0 голосов
/ 09 июля 2019

Иногда проходит тестовый сценарий, а иногда он завершается с ошибкой

Caused by: net.thucydides.core.webdriver.DriverConfigurationError: Could not instantiate new WebDriver instance of type class org.openqa.selenium.chrome.ChromeDriver (unknown error: DevToolsActivePort file doesn't exist
  (Driver info: chromedriver=74.0.3729.6 (255758eccf3d244491b8a1317aa76e1ce10d57e9-refs/branch-heads/3729@{#29}),platform=Windows NT 6.1.7601 SP1 x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 60.31 seconds
Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
System info: host: 'W10Y3J82', ip: '169.24.151.78', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.8.0_192'
Driver info: driver.version: ProvideNewDriver). See below for more details.

Я использую BDD безмятежности с селеном.

    <serenity.version>2.0.54</serenity.version>
    <serenity.maven.version>2.0.54</serenity.maven.version>
    <serenity.cucumber.version>1.0.14</serenity.cucumber.version>
    <cucumber.version>4.2.0</cucumber.version>

Когда происходит сбой, я вижу, что chromeDrive.exe и chrome.exe остаются запущенными в диспетчере задач.

Я делаю что-то не так или тестовые наборы селена хрупки?

Код бегуна

@RunWith(CucumberWithSerenity.class)
@CucumberOptions(
        plugin = {"pretty"},
        features = "src/test/resources/features",
        glue = {"starter"},
        tags = {"not @avoid"}
)
public class CucumberTestSuite {

}

serenity.conf

chrome.switches="""--start-maximized;--test-type;--no-sandbox;--ignore-certificate-errors;
                   --disable-popup-blocking;--disable-default-apps;--disable-extensions-file-access-check;
                   --incognito;--disable-infobars,--disable-gpu"""

Ответы [ 3 ]

0 голосов
/ 09 июля 2019

используйте эту строку в serenity.conf

serenity.restart.browser.frequency

Я думаю, по умолчанию установлено значение false

0 голосов
/ 10 июля 2019

Это то, что у меня сработало

serenity.restart.browser.for.each=NEVER

Добавил это в файл serenity.properties.

0 голосов
/ 09 июля 2019

Изменить настройки Chrome: перейдите на

`chrome://settings/ ->
 Advanced ->
 Continue running background apps when Google Chrome is closed`

, отключите эту опцию, перезапустите и запустите тесты

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