繁体   English   中英

如何使用Java Selenium Web驱动程序强制单击按钮

[英]How to click on a button with force using java selenium web driver

我正在使用Java的Selenium Web驱动程序。

并为我的应用程序在Facebook中开发自动化,因此,每当我第一次在Facebook中添加我的应用程序时,它都会要求您单击“确定”按钮

我试图用我的代码单击“确定”按钮,但这不起作用。

有没有更好的方法使用带有Java的Selenium Web驱动程序单击“确定”按钮?

我试过的是:

1)driver.findElemenr(element).click();

2)Actions action = new Actions(driver);
  action.click(element)   

3)Actions action = new Actions(driver);
  action.moveToElement(element).click()

4)Actions action = new Actions(driver);
  action.KeyDown(element, Keys.ENTER);

如果您想拒绝我的问题,请先告诉我原因

我认为您正在Selenium中寻找isEnabled()方法。 您可以做的是,使用webdriver单击按钮后,您可以检查按钮的状态,并在按钮仍处于启用状态时重复单击过程。

您只需尝试以下类似的逻辑。

int i=0;
while(isElementPresent(button) && i<10)
{
        Thread.sleep(1000);
                driver.findElement(button).click();
                i++;
}

上面的代码将尝试单击按钮,直到它出现或i (int i)达到10。(循环断点)

您可以在此处找到isElementPresent方法实现。

你可以试试看

 WebDriverWait button = new WebDriverWait(driver,60);      
 button.until(ExpectedConditions.elementToBeClickable(element));
 button.click();

这将等待60秒以使按钮可单击,如果在60秒之前满足条件(元素可单击),那么很好,将单击按钮,否则将引发异常。

ExpectedConditions类提供了许多有用的方法

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM