Wenn wir Selenium.type () oder selenium.click () -Operationen auf der Seite ausführen, müssen wir häufig darauf warten, dass ein Element angezeigt wird. Bei allgemeinen Webseiten verwenden wir beim Eingeben einer neuen Seite häufig Selenium.waitforpagetoload (WaitTime).
Für Elemente in Pop-up-Fenstern schreiben Sie oft, wie viele Sekunden Sie warten müssen. Tatsächlich können Sie die folgende allgemeinere und effizientere Methode verwenden und selbst eine Waitforelement () -Methode schreiben:
Java -Code
Protected void WaitforeLement (String -Ziel) {für (int Second = 0 ;; Second ++) {if (Second> = 60) {logger.debug ("Element:" + target + "kann nach 60 Sekunden nicht gefunden werden"); fail ("Element Timeout finden:" + Ziel); } try {if (selenium.isSelementPresent (Ziel)) break; } catch (Ausnahme e) {logger.debug ("Element:" + target + "kann nicht in 60 Sekunden gefunden werden"); assert (falsch); } pause (1000); }}Die Funktion dieses Codes besteht darin, uns in den meisten 60 Sekunden auf ein Element zu warten, bis es angezeigt wird, andernfalls schlägt der Testfall fehl. Wenn wir auf ein Element klicken oder eingeben möchten, werden wir diese Methode zuerst aufrufen. Das Folgende ist die verbesserte Klickmethode
Java -Code
Protected void klick (String -Locator) {WaitforeLement (Locator); selenium.click (Locator); }Von da an können wir unabhängig davon, ob die Seite eine Ajax -Implementierung ist oder nicht. Solange wir eine solche Click () -Methode nennen, wird der Code wie Thread.Sleep (10000) im Programm nicht benötigt.
Die obige Beispielerläuterung für die effiziente Reaktion von Selenium auf das Webseitenelement -Aktualisierung ist der gesamte Inhalt, den ich mit Ihnen teile. Ich hoffe, Sie können Ihnen eine Referenz geben und ich hoffe, Sie können wulin.com mehr unterstützen.