元素在点上不可点击。其他元素将收到点击:

时间:2016-08-12 17:19:50

标签: java css selenium jenkins cucumber

我试图点击页面顶部的按钮。我正在使用CSS选择器,当我在我的本地eclipse中运行它时,它运行得非常好。但是当我尝试在Jenkins上运行它时我本地计算机上的服务器失败,说元素不可点击。 当我看到Jenkins测试失败的屏幕截图时,我看到标题与我要点击的按钮重叠。 我已经尝试了几乎所有使用XPath,CSS,移动到元素,移动鼠标。 但仍无法修复,有人请帮忙。

我要点击添加buttoun

org.openqa.selenium.WebDriverException: Element is not clickable at point (775.25, 10.166671752929688). Other element would receive the click: <div class="globalHeader-UtilTop"></div>
Command duration or timeout: 69 milliseconds
Build info: version: '2.53.0', revision: '35ae25b1534ae328c771e0856c93e187490ca824', time: '2016-03-15 10:43:46'
System info: host', ip: '', os.name: 'Windows 7', os.arch: 'amd64', os.version: '6.1', java.version: '1.7.0_80'

<div class="Componet-intels**strong text**-Container">
<div class="Componet-intels-Container-Header">
<div class="Componet-intels-Container-Content">
<div class="Componet-intels-Container-Content-Row">
<span class="Componet-intels-Item"> Item # </span>
<span class="Componet-intels-Text-Item">
<span class="Componet-intels-Lable-Quantity"> Qty: </span>
<span class="Componet-intels-Text-Quantity">
<span class="Componet-intels-Button">
**<input class="Componet-intelsButtonIcon" type="button" value="Add">**
</span>
</div>

4 个答案:

答案 0 :(得分:24)

  

元素不可点击(775.25,10.166671752929688)。其他元素将收到点击:

它清楚地说,我们想要点击的元素在这种情况下会被其他元素div隐藏,这会接收到点击。

我认为这是UI的一个问题,标题不应该隐藏元素,但你可以尝试一些事情:

  1. 从webdriver最大化浏览器窗口,看看标题是否仍隐藏元素

    driver.manage().window().maximize() 
    
  2. 使用JavaScript点击元素

    WebElement element = driver.findElement(By.<locator>);
    JavascriptExecutor executor = (JavascriptExecutor)driver;
    executor.executeScript("arguments[0].click()", element)`
    

答案 1 :(得分:1)

使用 JavascriptExecutor 。: -

WebElement element = driver.findElement(By.<locator>);

JavascriptExecutor executor = (JavascriptExecutor)driver;
executor.executeScript("arguments[0].click()", element)

答案 2 :(得分:0)

在我的情况下,我不得不点击一个按钮,只有在加载了几张图形后才可见,然后是ajax图像。以下步骤帮助我解决了这个问题:

  1. 确定在ajax调用完成后消失的xpath/css并明确等待它invisible-wait.until(ExpectedConditions.invisibilityOf(element));

  2. 再次明确等待按钮为clickable-wait.until(ExpectedConditions.elementToBeClickable(element));

  3. 使用javascript点击按钮 -

    WebElement element = driver.findElement(By.xpath("")); JavascriptExecutor js = (JavascriptExecutor)driver;
    js.executeScript("arguments[0].click()", element);

  4. 如果仍然无法正常工作,请尝试在步骤1和2之间插入隐式等待。

答案 3 :(得分:0)

在使用Robot Framework和Chrome浏览器进行Salesforce自动化时出现此错误, 当我使用按键事件(Press Keys $ {locator} RETURN)代替“ Click Element”或“ Click Button”关键字时,此问题得到解决。