我想從我的網站測試一個基本的登錄/註銷。我的角度應用程序的入口點來自非角度登錄頁面(oauth),然後在驗證憑據後爲應用程序提供服務。我的測試將在本地運行,但不會在Circle Ci上運行;我的錯誤是這樣的;從無角度登錄頁面的量角器測試
Message:
Failed: Error while waiting for Protractor to sync with the page: "angular could not be found on the window"
Stack:
Error: Failed: Error while waiting for Protractor to sync with the page: "angular could not be found on the window"
這裏是我的測試功能:
it('Log into Webapp', function() {
browser.ignoreSynchronization = true;
browser.manage().timeouts().pageLoadTimeout(40000);
browser.manage().timeouts().implicitlyWait(25000);
browser.get('http://localhost:8000/login');
element(by.id('username')).sendKeys('x..');
element(by.id('password')).sendKeys('...');
element(by.name('Login')).click();
setTimeout(function(){}, 15000);
element(by.name('save')).click();
setTimeout(function(){}, 10000);
//browser.waitForAngular();
//browser.ignoreSynchronization = false;
//browser.ignoreSynchronization = false;
// Angular app should be served, Logout is on this
browser.ignoreSynchronization = false;
element(by.name('logoutBtn')).click();
});
一個真正的非Angular網站可能可能會瀏覽器.ignoreSynchronization移到beforeAll並沒問題,但這是一個非常好的起點。 – MBielski
@alecxe但beforeEach會影響角度規格('it'),對吧?如果測試套件中有任何一個('describe')。 –
@GirishSortur是的,這可能會成爲一個問題,讓我們來看看OP會說些什麼,謝謝! – alecxe