Ошибка: истекло время ожидания синхронизации Protractor со страницей после 11001 мс." когда пользователь browser.getCurrentUrl()

Я тестирую функциональность входа и выхода из системы, ниже приведены мои тестовые примеры.

it('should redirect to login page on click of logout',function(){
    signInPage.email.sendKeys('[email protected]');
    signInPage.password.sendKeys(1234);
    signInPage.loginButton.click();
    expect(browser.getCurrentUrl()).toMatch(/\/collections/);
    signInPage.profileImage.click();
    signInPage.logout.click();
    browser.waitForAngular();
    expect(browser.getCurrentUrl()).toMatch(/\/login/);
});

Когда я запускаю тест выше, он не работает, а ниже появляется сообщение об ошибке.

Error: Timed out waiting for Protractor to synchronize with the page after 11001ms. Please see https://github.com/angular/protractor/blob/master/docs/faq.md

я пытался использовать browser.waitForAngular();, но это не помогает. Когда я удалил ожидание "expect(browser.getCurrentUrl()).toMatch(/\/login/);", оно было передано. Кто-нибудь сталкивался с такой же проблемой, любая помощь приветствуется


person Zahid Afaque    schedule 14.03.2014    source источник


Ответы (2)


Возможно, вы столкнулись с той же проблемой, что и я. Для меня приложение постоянно отправляло запросы и поэтому никогда не было завершено.

Добавление следующей строки после "click()" исправило это для меня:

browser.ignoreSynchronization = true;

Ссылка на мой вопрос

person andrbmgi    schedule 21.03.2014

ptor.sleep(1000) вместо ожидания angular не идеально, но работает для меня

person Sirk    schedule 15.03.2014
comment
@aksu да, мой ответ сработает, если его заменить на browser.waitForAngular, он сработает - person Sirk; 16.03.2014
comment
Эй, Сирк, я тоже пробовал, но это не работает. - person Zahid Afaque; 16.03.2014