In meiner Angular App, ich schreibe die Automatisierung Test-Suiten der Anwendung mit Winkelmesser, und ich konfrontiert mit Problem, wie Spinner zu testen, warten auf den Spinner vom Bildschirm verschwinden. Ich habe versucht, einige wiederverwendbare Funktion für die Handhabung Spinner, und sehen aus wie es funktioniert gut, aber wenn Spinner im Popup-Fenster befindet, empfing ich Fehler: "... Failed: Veraltete Element Verweis: Element ist nicht an das Seitendokument angefügt ... ", wie ich verstehe, konnte der Winkelmesser das angegebene Element nicht finden, weil nach dem Schließen des Popup-Fensters der Spinner aus dem DOM mit dem Popup entfernt wurde. In meiner Funktion habe ich versucht, diese Winkelmesser Methoden zu verwenden: browser.wait (EC.invisibilityOf ($ ('# abc')), 5000); browser.wait (spinner.isDisplayed(), 5000); Wie ich verstehe, ist der Grund, dass browser.wait in der Schleife innerhalb Zustand laufen, bis es wahr oder Timeout auftritt, aber ich weiß nicht, um es zu beheben. Bitte helfen ...Testen von Spinnern mit Winkelmesser auf Popup-Fenster
Meine Lust Funktion mit zusätzlichen Kontroll für Geschenke: this.selector - Mutterelement (Taste)
waitBtnSpinner() {
let spinner = this.selector.element(by.css('.btn-spinner'));
spinner.isPresent().then((isPresent) => {
if(isPresent) {
spinner.isDisplayed().then((isDisplayed) => {
return browser.wait(this.EC.invisibilityOf(spinner), 10000);
})
} else {
return isPresent;
}
});
};
thx viel Hilfe, für mich funktioniert perfekt ... – Den