c# - C# + Selenium:自动化等待
问题描述
下面的代码不起作用,它总是在第 2 行抛出 No such element 异常。
wait.IgnoreExceptionTypes(typeof(NoSuchElementException));
wait.Until(ExpectedConditions.ElementToBeClickable(By.XPath(element)));
解决方案
这里可能有2个问题:
您正在尝试在元素可见之前找到该元素,因为您可以通过执行来等待该元素
wait.Until(ExpectedConditions.ElementExists(By.XPath(element)));
其中 element 是您要查找的元素的 XPath。
您没有使用正确的 XPath 找到元素。如果您使用的是绝对 XPath,请避免这样做,因为虽然绝对 XPath 可以更快地找到元素,但如果 DOM 结构发生更改,您的路径可能不再有效。
推荐阅读
- html - 无法使用引导程序在打印页面的同一行中显示 3 列
- java - 在流使用期间管理内存使用
- c# - Serilog 对象日志记录返回 null
- android - 如何将通道值标准化为范围 [0.0,1.0]?
- flutter - 如何在颤动中将默认日期设置为今天之后的第一个星期六
- javascript - 通过 Javascript 附加到 Datalist
- wordpress - 如何使网站的着陆页出现在 Google 上而不是“/ 的索引”?
- javascript - Cardlist 未定义 no-undef
- android - 禁用调试远程时,对象作为 React 子错误无效?
- sql - 提高 postgres sql 的性能——版本 10.5