selenium在chrome上運行報 Element is not clickable at point (1096, 26)


      Firefox上正常運行的腳本在chrome上提示Element is not clickable at point (1096, 26).分析原因,首先肯定不是因為頁面元素不存在而無法點擊。也不是要點擊的button不在預覽范圍內。
     后來發現,是被前一步的操作的一個彈出層擋住了。因為前幾步是彈出了一個modal,在關閉modal的時候webdriver就立刻執行下一步點擊某個link,而這時modal可能還沒完全關閉掉。
    解決辦法是等待那個彈出層完全關閉掉,link可以點擊的時候再執行

WebDriverWait wait = new WebDriverWait(driver, 15);
wait.until(ExpectedConditions.elementToBeClickable(By.id("ID of the element")));//等待直到定位的元素可以點擊
打算用上面的方法來解決,結果坑爹的不起作用,實在鬧不明白為啥不起作用。
最后直接在兩步之間加了個簡單的thread.sleep(2000)命令解決了···

至於為啥FF上可以正常運行,就不清楚了··可能selenium支持的更好些吧

另外一種情況是元素在視圖之外,可以用調用JS這種方法解決,不過還沒嘗試,做個記錄:

(JavascriptExecutor) driver).executeScript(
                                "arguments[0].scrollIntoView(true);", webElement);
webElement.click();


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM