Ich bin auf einer Website testen, die manchmal wirklich eine gute Verbindung haben. Alles funktioniert gut, bis es sich entscheidet, nicht richtig zu arbeiten. Ich trennte jedes Element mit einem wait.until, alles funktioniert normal, bis die Verbindung langsam wird und es glaubt, dass das Element vorhanden ist und beschließt, es zu verwenden.Java Selen - Warten auf langsamen Websites
public static WebElement login_btn(WebDriver driver, WebDriverWait wait) {
wait.until(ExpectedConditions.refreshed(ExpectedConditions.presenceOfElementLocated(By.id("btnEntrar"))));
wait.until(ExpectedConditions.refreshed(ExpectedConditions.elementToBeClickable(By.id("btnEntrar"))));
element = driver.findElement(By.id("btnEntrar"));
return element;
}
kann ich nicht einen Weg zu simulieren, diese finden, bis die Webseite schrecklich langsam wird und ich zu sehen, ob es funktioniert oder nicht. Nach monatelangem Versuch kann ich keine Möglichkeit finden, vollständig darauf zu warten, dass das Element vorhanden ist, und keine staleElementReferenceException zu erhalten, da die Site aufgrund der Verwendung eines Elements tatsächlich in eine Fehlerseite mündet. Wenn Sie die Website manuell ohne diese Tests verwenden, können Sie nicht simulieren, was mit dem Webdriver passiert. Gibt es Hinweise oder Vorschläge, was ich tun könnte?
Haben Sie versucht, einen Proxy wie Browsermob zu verwenden. Du kannst deine Verbindungsgeschwindigkeit drosseln und testen, wie dein Test auf eine langsame App reagiert ... – Grasshopper
@Grasshopper Das klingt nach einer guten Idee, ich werde es versuchen. – SunnyH