Использование безголового хрома отображает пустую часть страницы - PullRequest
0 голосов
/ 19 декабря 2018

При использовании chromedriver в скрипте транспортира для проверки угловой страницы я получаю разные результаты, используя браузер "Без головы" или "Нормальный".

На самом деле, если я использую локатор повторителя, для отображенияэлементы в «пустом» списке, он возвращает 5 элементов, но «безголовый» драйвер хрома не может их отобразить.Посмотрите на скриншоты.

Я использую ChromeDriver 2.45, который поддерживает Chrome версии 70–72, у меня версия 71. Моя ОС - Windows 10. Версия транспортира 5.1.1 Angularjs версия 1.5

Вот файл конфигурации:

exports.config = {
    directConnect: true,
    rootElement: 'html',
    chromeDriver: 'C:\\srv\\build\\applications\\chromedriver\\chromedriver_win32\\chromedriver.exe',
    getPageTimeout: 60000,
    allScriptsTimeout: 60000,
    framework: 'custom',
    frameworkPath: require.resolve('protractor-cucumber-framework'),
    capabilities: {
        'browserName': 'chrome',
            chromeOptions:{
              args:["--headless"]
            }
    },

specs: [ 'features/*.feature' ],
baseUrl: '',
cucumberOpts: {
    tags: '',
    require: [ 'steps/*.spec.js' ],
    monochrome: true,
    strict: true,
    plugin: "json"
 },
};

Regular Chrome rendering all items in the list


Headless Chrome fails to render the list

Ответы [ 2 ]

0 голосов
/ 19 декабря 2018

Кажется, проблема в размере окна.По умолчанию безголовый режим не является полноэкранным, поэтому некоторые элементы автоматически перемещаются и скрываются (как при попытке вручную изменить размер окна)

Просто добавьте в свой conf:

driver.manage().window().maximize();
0 голосов
/ 19 декабря 2018

Можете ли вы обновить аргументы до

capabilities: {
    ...,
    chromeOptions: {
        args: ["--headless", "--disable-gpu", "--window-size=800x600"]
    }
}

Для указанной конфигурации я могу автоматизировать работу без проблем.

Справочник https://github.com/angular/protractor/blob/master/docs/browser-setup.md#using-headless-chrome

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