이전 웹 사이트를 자동화하기 위해 Selenium WebDriver와 FirefoxDriver를 사용하고 있습니다. 웹 사이트는 일반 자바 스크립트를 사용하여 작성되었습니다. Ajax 요청을 수행하기 위해 XMLHttpRequest
을 사용하고 있습니다. Ajax 요청이 완료되기를 기다려야하는 WaitForAjax()
함수를 작성하고 싶습니다. 현재, Explicit Wait (Thread.Sleep
)을 사용하여이를 수행하고 있습니다. Implicit Wait을 사용하여 동일한 작업을 수행 할 수있는 사람이 있습니까?XMLHttpRequest 기반 요청에 대해 selenium 응답을 기다리는 방법
protected void WaitForAjax() {
/*
while (true) {
var ajaxIsComplete = (bool)(_driver as IJavaScriptExecutor).ExecuteScript("return jQuery.active == 0");
if (ajaxIsComplete)
break;
}
*/
//I am using Explicit Waits of 3 second.
Thread.Sleep(TimeSpan.FromSeconds(3));
}
https://stackoverflow.com/questions/15122864/selenium-wait-until-document-is-ready : 그리고 대부분의 경우,이 같은 스크립트를 시도 할 수 있습니다 : 할 수있는 뭔가가있다 웹 페이지 –