无法识别弹出窗口关闭按钮

时间:2016-10-27 13:40:14

标签: selenium-webdriver groovy

我在识别此弹出窗口中的关闭按钮时遇到了很大的麻烦。

我已经尝试了一个css选择器,寻找“popup-close”和“icon-close”,但都无法正常工作。不知道我做错了什么。需要帮助。

 @FindBy(css = "div[class='popup-close']")
 private WebElement closeEmailConfirmationWindow

 <section class="ng-scope" role="logInPopup">
   <div class="container-fluid">
     <div class="popup-close close">
       <a ng-click="$close()">
         <i class="icon-close"></i>
       </a>
     </div>
   <div class="row small">
     <h3 su-translate="user.resetPasswordConfirmTitle.label">You're nearly there…</h3>
     <p su-translate="user.resetPasswordConfirm.label">Check your email and click on the link within to reset your password. The link will expire, so get moving!</p>
   </div>
 </div>

1 个答案:

答案 0 :(得分:0)

这里有两个问题:

  1. 选择器中使用的类与HTML不完全匹配。 HTML代码段中的div元素为:generateJson(completeData, out);
  2. 有几种方法可以解决这个问题(此处仅列出2个选项):

    一个。使用匹配<div class="popup-close close">

    的部分首发

    湾在选择器中使用整个类:div[class^='popup-close']

    1. 理想情况下,您需要点击&#39; a&#39;不是div。在这种情况下,&#39; a&#39;可以通过完成上面的一个css选择器来包含子元素
    2. 来标识标记

      div[class='popup-close close']

      OR

      div[class^='popup-close']>a