Selenium WebDriver: Poczekaj na załadowanie złożonej strony z JavaScriptem

Mam aplikację internetową do przetestowania z Selenium. Podczas ładowania strony jest dużo JavaScript.
Ten kod JavaScript nie jest tak dobrze napisany, ale nic nie mogę zmienić. Tak więc czekam na pojawienie się elementu w DOMfindElement() metoda nie wchodzi w grę.
Chcę utworzyć ogólną funkcję w Javie, aby poczekać na załadowanie strony, możliwe rozwiązanie to:

uruchom skrypt JavaScript z WebDriver i zapisz wynikdocument.body.innerHTML w zmiennej łańcuchowejbody.porównajbody zmienna do poprzedniej wersjibody. jeśli są takie same, ustaw przyrost licznikanotChangedCount inaczej ustawionynotChangedCount do zera.poczekaj chwilę (na przykład 50 ms).jeśli strona nie zmieniła się przez jakiś czas (na przykład 500 ms), taknotChangedCount >= 10 następnie zamknij pętlę w przeciwnym razie do pierwszego kroku.

Czy uważasz, że to poprawne rozwiązanie?

questionAnswers(14)

yourAnswerToTheQuestion