selenium:如何解决no such element

selenium常见错误之一为no such element,遇到此问题,排查方法如下:

  1. 检查定位方法是否有误,如果是xpath,可打开浏览器开发者工具(F12),在控制台(console)输入$x(“your xpath”),查看是否可定位到元素,如果定位不到,或者定位到多个,均会导致no such element报错。

  2. 检查等待时间是否不够,可以在元素定位语句前,加入Thread.Sleep(),强制等待一段时间,在确认界面已加载后,再定位元素(注意,Thread.Sleep()参数单位为毫秒,例如,等待5min,可输入Thread.Sleep(300000))。

  3. 检查元素是否在iframe框架下,打开浏览器开发者工具(F12),在元素(element)下,可查看html结构,如果定位元素上层有iframe,需要先切换到iframe后才能定位元素,语法如下:

driver.SwitchTo().Frame(driver.FindElement(By.XPath("iframe xpath")));

(有用或者喜欢的话可以点个赞,对测试感兴趣的小伙伴也可以关注我,带你了解更多测试知识和行业信息)
9f915e0995daa4145af484947b81b612.jpeg

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值