• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C#SeleniumExpectedConditions不存在

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

Selenium中的显示等待指的是,等待某一元素出现或者等待页面加载完成后,才执行下一步。需要用到WebDriverWait类。

例如:

var wait = new WebDriverWait(driver, new TimeSpan(0, 0, 30));
var element = wait.Until(ExpectedConditions.ElementIsVisible(By.Id("content-section")));

但是在.net core最新版本的Selenium下使用WebDriverWait的时候,发现找不到ExpectedConditions。有一个比较简单的方法就是将Selenium降级到3.10.0或者找一些NuGet包例如DotNetSeleniumExtras.WaitHelpers。如果不想添加新的包或者降级,可以考虑使用Lambda表达式。如下:

 WebDriverWait wait = new WebDriverWait(_firefoxDriver, TimeSpan.FromSeconds(10));//设置超时时间
 var isFInd = wait.Until(contion =>
       {
           try
           {
//寻找元素 _firefoxDriver.FindElement(By.ClassName(
"c-icon-shape-hover")).Click(); //_firefoxDriver.FindElement(By.XPath(xpath)).Click(); return true; } catch (Exception e) { return false; } }); if (!isFInd) throw new Exception("Cant' Find Click");

当超时了会抛出一个超时异常。

参考链接:https://stackoverflow.com/questions/49866334/c-sharp-selenium-expectedconditions-is-obsolete


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C#ListView点击列头进行排序发布时间:2022-07-13
下一篇:
C#读取注册表发布时间:2022-07-13
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap