действия браузера не работают без заголовка chrome - PullRequest
1 голос
/ 17 января 2020

В angular автоматизации тестирования я использую некоторые действия мыши и клавиатуры, например mouseDown, Key.ENTER и Key.ARROW_DOWN в моем блоке it. Это великолепно работает в браузере (фактический браузер). Тот же тест не пройден, и я уверен, что он потерпел неудачу из-за browser.actions().SOMEACTION() в безголовом браузере. Я искал, но не нашел решения. Прикрепленный файл для неудачного теста. Буду благодарен за вашу помощь.

it('Should add Dispatcher successfully',()=>{
        return new Promise((res)=>{
            let email = Math.floor(Math.random()*100000)+1;
            addMember.getAddMemberSubMenu().click().then(()=>{
                setTimeout(()=>{
                    addMember.getFirstNameInput().sendKeys("John"); 
                    addMember.getLastNameInput().sendKeys("Doe");
                    addMember.getEmailInput().sendKeys(email+"@gmail.com")              addMember.getUserRolesInput().element(by.cssContainingText('option','Dispatcher')).click();
                    addMember.getPhoneNumberInput().sendKeys('03133535058');
                               browser.actions().mouseDown(addMember.getLocationInput()).perform(); //problem starts here
                    browser.actions().sendKeys(Key.ARROW_DOWN).perform();
                    browser.actions().sendKeys(Key.ENTER).perform();
                    addMember.getSaveButton().click().then(()=>{
                    return new Promise((resolve)=>{
                        setTimeout(()=>{
                        expect(browser.getCurrentUrl()).toContain('people').then(()=>{
                            resolve();
                            res();
                            });
                        },browser.params.Waiting_time.HIGH);
                    });
                });
             },browser.params.Waiting_time.HIGH);
            })
        });
    });

1 Ответ

0 голосов
/ 21 января 2020

Я решил это, передав аргумент размера окна в chromeOptions как

capabilities: {
  chromeOptions: {
    args: [ "--headless","--window-size=1600x1200"] //window-size
  },
browserName: 'chrome'

},

...