繁体   English   中英

如果 Frame 不可用,如何在 selenium web 驱动程序中切换到 div

[英]How to switch to div in selenium web driver if Frame is not available

<div class="panel panel-default ng-scope" ng-repeat="leftNavParent in
 leftNavCtrl.displayedNavItems">
    <div class="panel-heading">
       <h4 class="panel-title">
            <a ng-if="leftNavParent.ChildNavigationLinks.length > 0" 
              href="#!" class="activeContent ng-binding ng-scope" ng-
              click="leftNavCtrl.leftNavHeaderClicked(leftNavParent)">
                Modules
            </a>
        </h4>
    </div>
     <div class="panel-collapse collapse in slide" ng-
      show="leftNavParent.Expand" style="display: block;">
       <div class="panel-body">
            <ul class="list-group">
                <li ng-repeat="childNavParent in 
                 leftNavParent.ChildNavigationLinks" class="list-group-item 
                 ng-scope" ng-class="{'active' : 
                 leftNavCtrl.selectedNavItemId == childNavParent.Id}">
                    <a class="inboxsublink ng-binding" ui-sref-opts="
                      {reload: true}" ui-sref="AAA({ action: 'AAADashBoard', 
                       role: '18'})" href="18">Interactions
                       <span ng-if="childNavParent.HasCount" class="badge 
                         red-background pull-right ng-scope">
                            <span ng-if="childNavParent.Count >= 0" 
                             class="ng-binding ng-scope" style="">0</span>
                         </span>
                     </a>
                    <ul class="list-group sub_list slide ng-scope ng-hide" 
                    ng-if="childNavParent.ChildNavigationLinks.length > 0" 
                    ng-show="childNavParent.Expand" style="display: none;">
                        <li class="list-group-item list-group-item-sub ng-
                            scope" ng-repeat="childNavParentChild in 
                            childNavParent.ChildNavigationLinks" ng-class="
                            {'active' : leftNavCtrl.selectedNavItemId == 
                            childNavParentChild.Id}" style="">
                            <a class="inboxsublink ng-binding" ui-sref-
                            opts="{reload: true}" ui-sref="AAA({ action: 
                            'DashBoard', role: '19' })" href="19">
                                Administrator
                            </a>           
                        </li>
                    </ul>
                </div>
            </ul>
        </div>
    </div>
</div>

//在这里我改变了我的代码实际一个。 我想选择模块的元素,当我单击模块时,将打开子菜单。 这实际上是右手边的菜单。 我认为它是动态生成的

根据HTML,您分享了如何查找元素class="Activity-link cmm_action_link btn btn-primary"与两个节点/webelement 完全匹配的要求,如下所示:

  • 第一的 :

     <a class="Activity-link cmm_action_link btn btn-primary" ui-sref="SearchCMM({action: 'Search', pDashboardName: 'IHCP'})" href="/SearchMM-Search-">Search Records</a>
  • 第二 :

     <a class="Activity-link cmm_action_link btn btn-primary" ui-sref="CMMRecordManagement({action: 'CreateRecord', pDashboardName: 'IHCP'})" href="/CMM">Create New Record</a>

但是,要单击上述链接,您可以使用以下代码行:

  • 搜索记录

     driver.findElement(By.linkText("Search Records")).click(); //or driver.findElement(By.xpath("//a[@class='Activity-link cmm_action_link btn btn-primary' and @href='/SearchMM-Search-']")).click();
  • 创建新记录

     driver.findElement(By.linkText("Create New Record")).click(); //or driver.findElement(By.xpath("//a[@class='Activity-link cmm_action_link btn btn-primary' and @href='/CMM']")).click();

暂无
暂无

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

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