簡體   English   中英

Chrome,Selenium C#中的WebDriverWait

[英]WebDriverWait in Chrome, Selenium C#

我最近將WebDriver從Firefox更改為ChromeDriver,以前使用的等待步驟一直無法使用,直到元素可以進行交互為止”

WebDriverWait w = new WebDriverWait(driver, TimeSpan.FromSeconds(10)); w.IgnoreExceptionTypes(typeof(StaleElementReferenceException), typeof(InvalidElementStateException)); w.Until(ExpectedConditions.ElementExists(By.Id("formSubmit")));

我現在經常會收到類似“元素在點(964,776)不可點擊。其他元素會收到點擊:”之類的錯誤,即使該元素在頁面上可見。

有沒有一種方法可以告訴網絡驅動程序等待某個元素可以與某個元素進行交互,或者更好地與我可以更改的任何設置進行交互,以讓Selenium知道我正在使用Chrome,以便我的現有代碼可以正常工作?

Selenium C#Binding(2.46)的最新版本提供了一種預期條件的方法,名為ElementToBeClickable 試試吧。 不過,這是Chrome非常常見的問題。

這不只是我的最愛

try{
   //for example
           site.FindElement(By.Id("ctl00_ContentPlaceHolderBody_drp_City")).Click();

   }catch{

  Thread.Sleep(Time in sec);
           site.FindElement(By.Id("ctl00_ContentPlaceHolderBody_drp_City")).Click();

   }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM