0
A
回答
1
如果模糊事件導致可見效果,則可等待該效果,如等待顯示圖像。否則,如果沒有來自該事件的可見效果,則需要一個「測試掛鉤」來告訴測試與該事件相關的功能已經運行,例如將javascript變量設置爲已知值可以在測試中查詢。
對於這兩種情況下,你可以使用一個明確的等待條件,如文檔中所示的情況:
http://seleniumhq.org/docs/04_webdriver_advanced.html#explicit-and-implicit-waits
編輯:
關於你的評論,Nyegaard,你可以使用一個像這樣的明確的等待:
WebDriver driver = new FirefoxDriver();
driver.get("http://somedomain/url_that_delays_loading");
Boolean expectedTextAppeared =
(new WebDriverWait(driver, 10))
.until(ExpectedConditions.textToBePresentInElement(
By.id("ctl00_content_createnewschema_modalAlert_alertMessage"), "textYoureExpecting"));
此代碼將等待「textYoureExpecting」出現在跨度超時o f 10秒。如果需要更多時間才能顯示,則只需調整超時時間。
0
對於網頁中的所有AJAX請求,我使用jQuery.Active標誌來確定頁面是否已加載。如果jQuery.Active非零,這意味着這些是瀏覽器正在處理的活動請求的數量。當它歸結爲零時,這意味着活動請求的數量是沒有的。我沒有使用這個標誌模糊事件,但你不妨嘗試一下。你應該明確地使用暗示,明確地等待Luiz建議的。這是一個等待5分鐘以完成活動請求的功能。也許你可以說參數,加試,抓等
public int waitforAJAXRequestsToComplete(){
long start = System.currentTimeMillis();
long duration;
boolean ajaxNotReady = true;
while(ajaxNotReady){
if(((JavascriptExecutor)driver).executeScript("return jQuery.active").toString().equals("0"))
return 0;
duration = System.currentTimeMillis() - start;
duration = (long) (duration/(60*1000F));
if(duration>5.0)
return 1;
}
return 1;
}
相關問題
- 1. 使用Selenium 1和Selenium 2
- 2. 配置Selenium 2(WebDriver),使用IE並使用WebDriver上傳文件
- 3. 使用Selenium 2設置用戶代理
- 4. 如何使用Junit Selenium上傳文件?
- 5. 你如何讓Selenium使用SmartGWT組件?
- 6. 如何使用Selenium注入XML文件?
- 7. 如何使用selenium python編寫郵件
- 8. 如何使用Selenium webdriver.executescript
- 9. 如何使用Selenium的webdriver
- 10. 如何使用Selenium Safari Webdriver
- 11. 如何使用Selenium Webdriver?
- 12. 如何使用Selenium的Python
- 13. 如何使用Selenium WebDriver telnet
- 14. 如何使用Selenium(C#)
- 15. 如何使用Selenium的webdriver
- 16. 如何使用Selenium的webdriver
- 17. 如何使用Selenium的webdriver
- 18. 如何使用$事件Angularjs
- 19. 如何使用事件?
- 20. 如何使用事件
- 21. 如何使用bodymovin.js事件
- 22. 如何使用MySQL事件
- 23. 如何使用MouseListener事件
- 24. 如何使用onchange事件?
- 25. 如何使用TextChanged事件?
- 26. 如何使用Selenium和Selenium IDE以及使用SAML的網站
- 27. 如何使用SauceLabs使用selenium-webdriver軟件包?
- 28. 使用Selenium 2查找嵌套的iFrame
- 29. 在Selenium 2/Webdriver中使用CSS
- 30. 無法使用Selenium 2選擇元素?
嗯,我得到了一個,將得到的JavaScript彈出之後的值,它會得到通風口之後。但是當我看到AJAX添加的值時,我看不到它的價值 – Nyegaard