/ / Ako počúvať zatvorenie udalosti okna prehliadača v uhlom úhľade - angularjs, browser, uhlomer, angularjs-e2e, e2e-testovanie

Ako počúvať pre udalosť zatvorenia okna prehliadača v uhlom úhlomníku - angularjs, browser, uhlomer, angularjs-e2e, e2e-testovanie

Snažím sa napísať e2e testy na prihláseniemoja aplikácia s auth0. Keď používateľ zadá svoje poverenia a kliknutia na prihlásenie, auth0 načíta vyskakovacie okno, ktoré predpokladám, že verifikuje ich detaily a keď sa to zatvorí, viem, či pokus o prihlásenie sa podaril alebo zlyhal. V súčasnosti dostanem skúšku do práce, ktorú volám

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

Ak chcete nechať čakať 4s pre popup otvoriť aspracovať ich údaje a potom ich zatvoriť. Ale zdá sa to ako zlý spôsob, ako to urobiť. V ideálnom prípade by som rád počúval na blízkej udalosti v popup window, ale nie som si istý, ako to urobiť? Každý, kto má nejaké nápady?

Vďaka!

odpovede:

1 pre odpoveď č. 1

Skúste použiť funkciu čakania () na úhlometra, aby ste skontrolovali prítomnosť prvkov. Tu je odkaz na to - Utiahnite čakať a potom overte prítomnosť prvku jeho viditeľnosťou alebo neviditeľnosťou Nižšie je vzorka -

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");
});
});

Prípadne, ak vyskakovacie okno, ktoré dostanete, je upozornenie, potom môžete skontrolovať prítomnosť upozornenia a potom overiť veci tak, ako chcete. Ďalšie informácie o upozornení, Dúfam, že to pomôže.