我正在使用Selenium Web Driver,并在尝试在Web浏览器中单击适当的元素时遇到以下异常:Unable to locate element
。
XPath是100%正确的。
奇怪的是它在以下情况下正常工作:
在调试模式下。
在出现异常时点击VS中的Continue
。
当我在屏幕上手动移动鼠标时。
如果有任何帮助,我将不胜感激。
编辑:Thread.Sleep没有帮助。我想在网络日历中点击减少年份按钮。它第一次工作,但第二次冻结。但目标仍然存在。所以我不明白它是如何不可见的。
答案 0 :(得分:1)
驱动程序正在尝试在加载元素之前找到它。在点击之前尝试等待它。
public boolean shareDigit(int a, int b) {
boolean answer = false;
int left = a/10;
int right = a % 10;
if(Arrays.asList(b).contains(left) ||Arrays.asList(b).contains(right)){
answer = true;
}
return answer;
}
答案 1 :(得分:0)
您可以尝试一些事项:
按ID而不是xpath尝试选择器。也许正在渲染新元素并使xpath找不到元素。
2 - 实现重试模式
3次使用线程休眠以使页面完全呈现。