Ich habe einige, wie implementiert die Funktion zu warten, bis Seite in intern 4 mit TypeScript
geladen wird. Aber manchmal funktioniert es nicht und wirft TimeOutEror
, auch wenn ich den Fehler in der Funktion abfange. Kann jemand bitte überprüfen und sagen Sie mir was falsch ist.warten bis Seite geladen ist Funktion in Praktikanten 4 mit Typescript?
Heres meine Implementierung:
export abstract class AdvalentBasePage {
remote: any;
waitTime: number = -1;
locator: any;
constructor(remote: any, locator: any) {
this.remote = remote;
this.locator =locator ;
}
abstract getPageTitleXpath(): string;
getPageTitleElement() {
return this.remote.findByXpath(this.getPageTitleXpath());
}
//this function sometimes throws timeoutError even before waitTime provided in argument
async waitUntilPageIsFullyLoaded(waitTime: number): Promise<any> {
this.waitTime = waitTime;
var self = this;
try {
await self.remote.sleep(1000).findByXpath(self.getPageTitleXpath());
} catch (e) {
console.log(e.name)
if (e.name == 'NoSuchElement') {
if (this.waitTime > 0) {
self.waitTime = self.waitTime - 1000;
await self.waitUntilPageIsFullyLoaded(self.waitTime);
}
else {
throw new Error('TimeOut Exception ')
}
}
}
}
}