繁体   English   中英

如何使用Selenium Web驱动程序单击导航栏

[英]How to click on navigation bar using selenium web driver

我想使用Selenium Web驱动程序单击导航栏

我的HTML代码是

<div class="navbar-inner">
            <div class="container">
            <a class="navbar-brand " ui-sref="home" href="#/"><i class="glyphicon glyphicon-home"></i> iWatch Project</a>
            <div class="navbar-header">
                <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-navbar-collapse-1" aria-expanded="false">
                    <span class="sr-only">Toggle navigation</span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                    <span class="icon-bar"></span>
                </button>
            </div>
            <div class="navbar-collapse collapse ng-scope" id="bs-navbar-collapse-1" data-ng-controller="uiUserNavigationController">
                <ul class=" nav navbar-nav">
                    <li data-ng-hide="!userInfo.isAuthenticated || !isPlanner" class="ng-hide"><a ui-sref="contractList" href="#/contract"><i class="glyphicon glyphicon-plus"></i> Contract Information</a></li>
                    <li data-ng-hide="!userInfo.isAuthenticated || !isPlanner" class="ng-hide"><a ui-sref="civilList" href="#/civil"><i class="glyphicon glyphicon-plus"></i> Civil </a></li>
                    <li data-ng-hide="!userInfo.isAuthenticated || !isPlanner" class="ng-hide"><a ui-sref="emList" href="#/em"><i class="glyphicon glyphicon-plus"></i> E&amp;M </a></li>
                    <li data-ng-hide="!userInfo.isAuthenticated || !isPlanner" class="ng-hide"><a ui-sref="safetyList" href="#/safety"><i class="glyphicon glyphicon-plus"></i> Safety </a></li>
                    <li data-ng-hide="!userInfo.isAuthenticated || !isPlanner" class="ng-hide"><a ui-sref="workOrderList" href="#/workOrder"><i class="glyphicon glyphicon-plus"></i> Utility Diversion </a></li>
                    <li data-ng-hide="!userInfo.isAuthenticated || !isPlanner" class="ng-hide"><a ui-sref="iPadView" href="#/iPadView"><i class="glyphicon glyphicon-plus"></i> iPad View</a></li>
                    <li class="dropdown ng-hide" data-ng-hide="!userInfo.isAuthenticated">
                        <a class="btn dropdown-toggle ng-binding" href="#" aria-haspopup="true" aria-expanded="false">
                            Hi, <i class="glyphicon glyphicon-user"></i>  !
                        </a>
                        <ul class="dropdown-menu">
                            <li data-ng-hide="!userInfo.isAuthenticated" class="ng-hide"><a ui-sref="user.intray" href="#/user/intray"><i class="glyphicon glyphicon-tasks"></i> My Tasks</a></li>
                            <li data-ng-hide="!userInfo.isAuthenticated || !isPlanner" class="ng-hide"><a ui-sref="requestAccess.CV" href="#/requestAccess/CV"><i class="glyphicon glyphicon-eye-open"></i> Request Access</a></li>
                            <li data-ng-hide="!userInfo.isAuthenticated" class="ng-hide"><a ui-sref="userChangePassword" href="#/changepassword"><i class="glyphicon glyphicon-lock"></i> Change Password</a></li>
                            <!--<li data-ng-hide="!userInfo.isAuthenticated"><a ui-sref="userSettings"><i class="glyphicon glyphicon-edit"></i> User Settings</a></li>-->
                            <li data-ng-hide="!userInfo.isAuthenticated" class="ng-hide"><a ui-sref="userClaims" href="#/userClaims"><i class="glyphicon glyphicon-wrench"></i> User Claims</a></li>
                            <li data-ng-hide="!userInfo.isAuthenticated" class="ng-hide"><a href="" data-ng-click="logOut()"><i class="glyphicon glyphicon-log-out"></i> Logout</a></li>
                        </ul>
                    </li>
                    <li data-ng-hide="userInfo.isAuthenticated" class=""><a href="" data-ng-click="LogIn()"><i class="glyphicon glyphicon-log-in"></i> Login</a></li>
                </ul>
            </div>
        </div>
        </div>

我要单击硒中标记的部分。

**<a href="" data-ng-click="LogIn()">**

我尝试了什么

driverIE.findElement(By.cssSelector("a[href*=LogIn()]")).click();

任何对此的帮助-会有所帮助

如果没有xpath,请使用链接文本单击

driverIE.findElement(By.linkText("Login")).click()

如果您不确定确切的链接文字,也可以使用部分匹配来做同样的事情

driver.findElement(By.partialLinkText("Log")).click();

您还可以通过使用xpath获得此元素:

 driverIE.findElement(By.xpath("//a[@data-ng-click='LogIn()']")).click();

暂无
暂无

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

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