/ / Як слухати подію закриття вікна браузера в Angular Protractor - angularjs, браузер, транспортир, angularjs-e2e, e2e-тестування

Як прослухати вікно браузера закрити подію в Angular Protractor - angularjs, браузер, транспортир, angularjs-e2e, e2e-тестування

Я намагаюся написати тести e2e для входумій додаток з auth0. Коли користувач вводить свої облікові дані та натискає, щоб увійти, auth0 завантажує спливаюче вікно, яке, я вважаю, перевіряє їх дані, і коли це закривається, я знаю, чи спроба входу вдалася чи не вдалася. В даний час, щоб отримати тест на роботу, я дзвоню

browser.sleep(4000).then(....

Щоб змусити чекати 4 с, щоб спливаюче вікно відкрилося іобробляти їх дані, а потім закривати. Але це здається поганим способом зробити це. В ідеалі я хотів би слухати близьку подію у спливаючому вікні, але я не впевнений, як це зробити? Хтось має ідеї?

Дякую!

Відповіді:

1 для відповіді № 1

Спробуйте скористатися функцією транспортування wait (), щоб перевірити наявність елементів. Ось посилання на нього - Трантрактор чекайте а потім перевірити наявність елемента за його видимістю чи невидимістю. Нижче наведено зразок -

var ele = //you element"s locator
var EC = protractor.ExpectedConditions;
browser.wait(EC.visibilityOf(ele),10000).then(function(){
//verify the body details of popup
browser.wait(EC.invisibilityOf(ele),10000).then(function(){
console.log("element opened and closed");
});
});

Крім того, якщо спливаюче вікно, яке ви отримуєте, є сповіщенням, то ви можете перевірити наявність попередження, а потім перевірити речі, як хочете. Більше інформації на попередження. Сподіваюся, це допоможе.