Невозможно нажать кнопку в Selenium - PullRequest
0 голосов
/ 20 сентября 2018

У меня проблемы с поиском элемента, который является кнопкой завершения на странице.Я использовал driver.findElementById ("finish"). Click ();и это не работает.

Ниже приведены примеры, которые я использовал, но безуспешно:

for (WebElement Element : driver.findElement(By.id("finish")).findElements(By.tagName("a"))) {
if (Element.getAttribute ("class").contains("criteria-filter")) { Element.click();
break;
           }

----------------------------------------------------------------
 WebElement click1 = new WebDriverWait(driver, 10).until(ExpectedConditions.elementToBeClickable(By.xpath("//*[@id=\"finish\"]")));   
((JavascriptExecutor) driver).executeScript("arguments[0].click();",click1);

----------------------------------------------------------------

if(!driver.findElementById("finish").isEnabled())
            {
driver.findElementById("finish").click();
 }else{
 System.out.println("False");
            }

Элемент:

   <a id="finish" access="" allof="PA.DEPLOYMENT_CONFIG" class="btn criteria-filter btn-success" href="" ng-click="verifyAllFields(sftpForm) &amp;&amp; sftpForm.$valid &amp;&amp; create()">Finish 
            </a>

1 Ответ

0 голосов
/ 20 сентября 2018

Селектор класса не лучшая идея, так как он потерпит неудачу, если будет больше элементов с тем же классом.

Лучший способ - открыть dev-tools, нажать ctrl + f, а затем попытаться упаковать ваш элемент с помощью xpath следующим образом:

// a [text () = 'Finish']

Когда вы "катаемся", этот браузер перейдет к этому элементу.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...