Как установить аргументы из chromeOptions в beforeSession webdriverIO + Cucumber - PullRequest
0 голосов
/ 01 марта 2019

Мне нужно установить аргументы перед сессией.На определенный тег должно быть передано определенное разрешение экрана.Я попытался реализовать beforeSession, но необходимый аргумент отсутствует в chromeOptions.args при запуске сеанса.

Я пробовал две версии:

1.beforeSession:

   beforeSession: function(){

        if(argv.tags ===("@virtualFront")){
            exports.config.capabilities[0].chromeOptions.args.push('--window-size=1080,1920');
        } else{
            exports.config.capabilities[0].chromeOptions.args.push(' --start-maximized');

        }
        console.log("it is from config beforeSession: "+exports.config.capabilities[0].chromeOptions.args);

    },

suite.cucumber.wdio.conf:

 browserName: 'chrome',
            chromeOptions: {
                args: ['--incognito',],
                binary: '/Program Files (x86)/Google/Chrome/Application/chrome.exe' 
            },

BeforeSession:

beforeSession: function () {

    if(argv.tags ===("@virtualFront")){
        argv.optionChrome = '--window-size=1080,1920';
    } else{
        argv.optionChrome=' --start-maximized';
    }
    console.log("it is from config beforeSession: "+exports.config.capabilities[0].chromeOptions.args);
},

suite.cucumber.wdio.conf:

 {
            browserName: 'chrome',
            chromeOptions: {
                args: ['--incognito',argv.optionChrome, ],
                binary: '/Program Files (x86)/Google/Chrome/Application/chrome.exe'
        },

Когда я использую 2 аргумента версии, равные нулю

1 Ответ

0 голосов
/ 01 марта 2019

Решением было добавить скрипт в начало suite.cucumber.wdio.conf:

let chromeOpts = ['--incognito'];
if (argv.tags ==="@virtualFont"){
    chromeOpts +=` --window-size=1080,1920`
}else chromeOpts +=` --start-maximized`;

и:

chromeOptions: {
                args: [ chromeOpts, ],
                binary: '/Program Files (x86)/Google/Chrome/Application/chrome.exe'
 //for windows7
            },
...