ich ein Stück Code wieDefaultWait <T> .bis Verhalten für Polling
DefaultWait<IWebDriver> wait = new DefaultWait<IWebDriver>(driver);
wait.PollingInterval = TimeSpan.FromMilliseconds(250);
wait.Message = "Can't find element";
wait.Timeout = TimeSpan.FromSeconds(30);
driver.Navigate().GotoUrl('.....');
IWebElement elem = wait.Until(x => x.FindElement(By.ClassName("abc")));
Nun sagen lässt, dass die URL ich navigiert nicht dieses Element enthält, mit einem Klassennamen „abc“.
Mein Verständnis von DefaultWait ist, dass es dieses Element finden soll, durch Abfrage alle 250 Millisekunden und Timeout nach 30 Sekunden. Aber ich sehe, dass es fast sofort zurückgibt, dass das Element nicht vorhanden ist oder eine Ausnahme auslöst.
Ich bin ein wenig verwirrt, weil technisch nach 10 Sekunden oder so das DOM hätte geändert werden können, um ein Element dieser Klasse zu schaffen, und die Wartezeit sollte erfolgreich sein/oder hätte erfolgreich sein können.
Also die Frage ist, was ist das Verhalten der DefaultWait? Sollte es bis zum angegebenen Timeout warten oder fehlt mir das Verhalten des DefaultWait vollständig?
Dies ist die C# Implementierung? –