Według selenu, domyślne czekanie odpytuje DOM przez określony czas, aby sprawdzić, czy element się pojawi. Rozumiem, że będzie on sondować do określonego czasu, ale jeśli element pojawi się wcześniej, to będzie kontynuowany bez czekania dalej.Selenium implicit wait vs Thread.sleep()
http://seleniumhq.org/docs/04_webdriver_advanced.html
mam sposobu, który prowadzi się w około 13 sekund. Kiedy ustawię niejawne oczekiwanie na 100 sekund, zajmuje to 213 sekundy.
driver.manage().timeouts().implicitlyWait(100, TimeUnit.SECONDS);
Wygląda na to, że podczas tej metody czekam 2 razy (po 100 sekund). Ustawienie domyślnego czasu oczekiwania na 0 lub 100 nie ma wpływu na moją metodę. W obu przypadkach zakończyły się poprawnie.
Moje pytanie jest takie. Pomyślałem, że domyślne oczekiwanie czeka na najkrótszy czas na pojawienie się elementu. Czy to jest poprawne? Czy robię coś złego?
Ponadto, dlaczego czeka 2 razy, kiedy najwyraźniej nie trzeba czekać? (Moja metoda zakończy poprawnie nawet jeśli ustawić czas oczekiwania na 0)
możliwy duplikat [selenium webdriver - wyraźne oczekiwanie vs domniemane oczekiwanie] (http://stackoverflow.com/questions/10404160/selenium-webdriver-explicit-wait-vs-implicit-wait) – lesmana