2013-08-22 2 views

Antwort

8

2 Ansätze:

  1. Wenn Sie genau 60 Sekunden warten müssen Sie Thread.sleep (60000)

  2. Wenn Sie, dass die Seite geladen werden sollen, um sicherzustellen, verwenden könnte (könnte es sein, kleiner oder größer als 60 sec) ich würde den unten Ansatz empfehlen:

eine Ursache Element in der Zielseite & warten, bis es anklickbar ist. Sie sind dann sicher, dass die Seite geladen wurde.

WebDriverWait wait = new WebDriverWait(driver,120); 
wait.until(ExpectedConditions.elementToBeClickable(By.id(id))); 

Der WebDriver wartet maximal 120 Sekunden. damit das Element anklickbar ist. Wenn das Element zuvor angeklickt werden kann, wird der Test fortgesetzt.

+0

Ja, Thread.sleep (60000) ist besser und einfacher Code, um eine bestimmte Zeit vor dem Laden der nächsten Seite zu warten. Explizites Warten ist besser auf Element zu warten. –

1
driver.manage().timeouts().implicitlyWait(10, TimeUnit.SECONDS); 
+0

Danke für Ihre Hilfe. Der obige Code gilt für alle Elemente. Aber ich möchte 60 Sekunden warten. vor dem Laden einer anderen Seite nach dem Klicken auf Login-Taste (vorausgesetzt, es ist eine Login-Seite -> Klicken Sie auf Login-Taste nach dem Auffüllen der notwendigen Informationen -> Ich möchte 60 Sekunden warten, bevor die gewünschte Seite geladen wird). –

+0

Versuchen Sie das! Thread.sleep (60000L); –

+0

implizitWait ist global. Sie möchten nicht auf Elemente warten, die nicht warten müssen. –

Verwandte Themen