2016-12-08 10 views
2

У меня есть одна веб-страница, в которой появился экран входа в систему после входа. На этом оверлейном экране я хочу нажать кнопку, которая не доступна для кликов. Этот экран наложения не находится в другом кадре. Его на той же странице.Как нажимать на веб-элемент с надписью с надписью через selenium webdriver java

Пожалуйста, ознакомьтесь с нижерасположенной структурой страницы и позвольте мне посоветовать то же самое.

<overlay> 
    <div class="full-screen" ng-show="showOverlay"> 
     <div class="dashboard-overlay"></div> 
     <div class="welcome-dialog animated bounceIn"> 
      <div class="welcome-title"> 
       <p>Hi hello</p> 
       <a class="mk-btn mk-btn-primary mk-btn-sm next-btn" ng-click="hideOverlay()">Next</a> 
      </div> 

И вот что я просто использую xpath для автоматической установки этой кнопки. Но он не работает driver.findElement(By.xpath("//overlay/div/div/a")).click();

Любая помощь будет оценена по достоинству. Заранее большое спасибо.

ответ

0

Кажется, что ссылка имеет 3 div предков, в то время как в вашем XPath есть только 2. Попробуйте

driver.findElement(By.xpath("//overlay/div/div/div/a")).click(); 

или

driver.findElement(By.xpath('//a[@ng-click="hideOverlay()"]')).click(); 
+0

Thanx Андерсон. Его рабочий тон –

+0

Пожалуйста, отметьте этот ответ как «Принято», если он решил вашу проблему. благодаря – Andersson