Java 用';我不总是工作。我正在使用Webdriver和WebElement

Java 用';我不总是工作。我正在使用Webdriver和WebElement,java,web-scraping,automation,Java,Web Scraping,Automation,我在做自动化的任务 为了完成我的任务,我想在同一个弹出窗口中执行3次自动单击。最后一个失败了很多次。有时它无法单击或在按钮外执行 我也试过thread.sleep,但问题仍然存在 我的代码: WebElement boton = driverInicial.findElement(By.xpath(PATH_BOTON)); WebDriverWait wait3 = new WebDriverWait(driver, 2); wait3.until(ExpectedCo

我在做自动化的任务

为了完成我的任务,我想在同一个弹出窗口中执行3次自动单击。最后一个失败了很多次。有时它无法单击或在按钮外执行

我也试过thread.sleep,但问题仍然存在

我的代码:

    WebElement boton = driverInicial.findElement(By.xpath(PATH_BOTON));
    WebDriverWait wait3 = new WebDriverWait(driver, 2);
    wait3.until(ExpectedConditions.elementToBeClickable(boton)).click();
CSS选择器或Javascript执行器是更好的选择


谢谢

我在按钮上使用Selenium进行测试时遇到的大多数问题都来自html页面上按钮对象的起始位置。span元素本身有时在按钮开始之前就开始了,因此,如果需要使用DRIVER.MoveByOffset(xInt,yInt).Perform()方法将指针移动到位,则最终会单击空白的span空间而不是按钮。
对于选择器,如果可以的话,最好使用By.id(“uniqueID”),因为只能提供一个唯一的id,这样您就知道这是您为测试抓取的对象。

selenium指针偏移通常是从您选择的元素的左上角开始的。