我正在使用硒作为测试脚本.我得到以下错误,并且这个错误随机发生.当我跑10次,我得到这个大约两次.所以它不是真正的可重现性.有人知道为什么会发生这种情况吗?我试图点击的元素在浏览器中是绝对可见的,不会移动,所以不需要调整大小或拖动元素.我正在使用chrome webdriver,并且我读了其他故障排除策略(
Debugging “Element is not clickable at point” error),并且它们似乎与我的问题无关.我也等了足够的时间.
UnknownError: unknown error: Element is not clickable at point (167,403). Other element would receive the click: <div class="leftMasterBackground"></div>
解决方法
为了提高稳定性,您可以执行多个步骤,同时点击不同的UI元素:
>明确地等待它在DOM中的存在
>滚动到元素视图
>检查是否可点击
这是否有助于稳定?
WebDriverWait wait = new WebDriverWait(driver,3) JavascriptExecutor js = ((JavascriptExecutor) driver) //presence in DOM wait.until(ExpectedConditions.presenceOfElement(By.id("ID"))); //scrolling WebElement element = driver.findElement(By.id("ID"))); js.executeScript("arguments[0].scrollIntoView(true);",element); //clickable wait.until(ExpectedConditions.elementToBeClickable(By.id("ID")));
此外,如果您决定使用更加自定义的方式覆盖默认的Actions界面,则可以使用两种类型的点击(例如):click()将具有所有稳定性步骤和fastClick(),这将是默认单击,而不是任何变化.