Serenity Headless Chrome время от времени дает сбой, в то время как Non-headless Chrome никогда не дает сбоев

Я использую фреймворк Serenity для запуска наших тестовых случаев. Когда я включаю безголовый режим Chrome и запускаю его, некоторые случаи иногда будут завершаться сбоем (40/900 случаев) из-за сбоя / невозможности открытия Chrome. Но если я отключу безголовый режим, эта проблема никогда не возникнет. Вот журнал:

net.thucydides.core.webdriver.DriverConfigurationError: Could not instantiate class org.openqa.selenium.chrome.ChromeDriver
    Caused by: net.thucydides.core.webdriver.DriverConfigurationError: 
    Could not instantiate new WebDriver instance of type class org.openqa.selenium.chrome.ChromeDriver (unknown error: unable to discover open pages
    Build info: version: '3.141.59', revision: 'e82be7d358', time: '2018-11-14T08:17:03'
    System info: host: '****', ip: '****', os.name: 'Windows 10', os.arch: 'x86', os.version: '10.0', java.version: '1.8.0_131'
    Driver info: driver.version: ProvideNewDriver
    remote stacktrace: Backtrace:
        Ordinal0 [0x009F87E3+2852835]
        Ordinal0 [0x008E5BB1+1727409]
        Ordinal0 [0x007BE4B9+517305]
        Ordinal0 [0x00750B3B+68411]
        Ordinal0 [0x0074D3A0+54176]
        Ordinal0 [0x0076D9F7+186871]
        Ordinal0 [0x0076D7FD+186365]
        Ordinal0 [0x0076B70B+177931]
        Ordinal0 [0x00752584+75140]
        Ordinal0 [0x00753650+79440]
        Ordinal0 [0x007535E9+79337]
        Ordinal0 [0x008FAD5C+1813852]
        GetHandleVerifier [0x00B1C616+1075574]
        GetHandleVerifier [0x00B1C367+1074887]
        GetHandleVerifier [0x00B27497+1120247]
        GetHandleVerifier [0x00B1CC16+1077110]
        Ordinal0 [0x008F3206+1782278]
        Ordinal0 [0x008FC3BB+1819579]
        Ordinal0 [0x008FC523+1819939]
        Ordinal0 [0x00912B45+1911621]
        BaseThreadInitThunk [0x7670F989+25]
        RtlGetAppContainerNamedObjectPath [0x770674A4+228]
        RtlGetAppContainerNamedObjectPath [0x77067474+180]

Безмятежность.Свойства:

webdriver.driver=chrome
webdriver.timeout.implicitlywait = 10
webdriver.timeout.fluentwait = 10
serenity.take.screenshots=FOR_FAILURES
serenity.console.colors = true
chrome_preferences.download.default_directory = C:\\serenityDataDownload
chrome_preferences.profile.default_content_settings.popups=0
chrome_preferences.download.prompt_for_download=false
webdriver.chrome.driver = libs/chromedriver/win32/chromedriver.exe

Дополнительная информация:

Chrome version: 84.0.4147.105
ChromeDriver version: 84.0.4147.30
Serenity version 2.1.8
Serenity cucumber version 1.9.45

Кто-нибудь сталкивался с такой похожей проблемой?


person Sui    schedule 02.09.2020    source источник


Ответы (1)


Я думаю, что это ошибка Chromedriver, о чем свидетельствует трассировка стека.

person John Smart    schedule 02.09.2020
comment
Да, кажется, это происходит с Chrome83. Наше текущее решение использует -Dfailsafe.rerunFailingTestsCount=2 для повторного запуска этих неудачных случаев. Мы рассматриваем возможность завершения всех задач chrome/chromedriver перед каждым сценарием, чтобы решить эту проблему. Какие-либо предложения? - person Sui; 03.09.2020