51Testing软件测试论坛

标题: selenium webdriver如何定位页面菜单项 [打印本页]

作者: bob190314    时间: 2015-6-2 14:08
标题: selenium webdriver如何定位页面菜单项
<!--菜单 -->
    <div class="head_memu" id="head_menu">
   
        <div class="head_menu_left tag" id="head_menu">
            <div id="tagLeft0" class="ctrl goLeft">向左</div>
            <div id="tagScroll0" class="tagScorll">
                <div style="width:2000px; height:33px;position:relative; overflow:hidden">
                    <ul class="ctrlList" id="rollBox0">
                        <li class="menu_click_style"><a href="javascript:linkToLeft('/TBPWeb/tbp/page/imain/left.jsp');linkToRight('/TBPWeb/tbp/tableViewAction.do?method=load&viewname=customTableView&sys_tv_key=viewid&sys_tv_value=MessageDefault');changeIndexWidth();">首页</a></li>
                        <!--
                        <li class="menu_click_style"><a href="javascript:linkToLeft('/TBPWeb/tbp/page/imain/left.jsp');linkToRight('/TBPWeb/tbp/common/portal/action/PortalAction.do?method=initPortal');changeIndexWidth();">首页</a></li>
                        -->
                        
                            <li class="head_menu_list" ><a href="javascript:linkToLeft('/TBPWeb/tbp/left.do?menuID=100&login=');changeWidth();">用户管理</a></li>
                        
                            <li class="head_menu_list" ><a href="javascript:linkToLeft('/TBPWeb/tbp/left.do?menuID=434&login=');changeWidth();">系统管理</a></li>
                        
                    </ul>
                </div>
            </div>
            <div id="tagRight0" class="ctrl goRight">向右</div>


通过上面js代码 selenium webdriver如何定位“系统管理”这个菜单
作者: wuranxu    时间: 2015-6-2 15:18
xpath=//li[text()='系统管理']
试试,其实也可以先定位<ul class="ctrlList" id="rollBox0">再根据绝对路径写
作者: bob190314    时间: 2015-6-2 15:52
wuranxu 发表于 2015-6-2 15:18
xpath=//li[text()='系统管理']
试试,其实也可以先定位再根据绝对路径写

第一个方法还是读取不到界面功能菜单“系统管理”。
第二个方法代码怎么写的,因为是初学者,所以代码这块很差
作者: bob190314    时间: 2015-6-3 09:40
请懂的大神帮忙看下为什么我用下面几种方法都没办法定位到“用户管理”这个菜单项
第一种:driver.findElement(By.linkText("用户管理")).click();
第二种:driver.findElement(By.xpath("//div[[@class='head_menu']/div[@class='head_menu_left']/div[@class='tagScorll']/u1[@class='ctrlList']/li[@class='head_menu_list']]")).click();
作者: joykao    时间: 2015-6-5 13:38
先打开它的上层元素,等它出现再点击它
作者: 喵的啦啦    时间: 2015-8-9 14:32
逐层打开菜单, 还要加个等待
作者: yuxiwa    时间: 2016-5-18 20:53
楼主,请问你这个问题解决没,我也遇到同样问题
作者: ouyanggengcheng    时间: 2016-5-19 11:57
遇到同样问题,定位不到菜单
作者: lbs    时间: 2016-6-1 13:58
this.xtgl = driver.findElement(By.xpath("//*[@id='rollBox0']/li[3]/a"));  //系统管理
作者: lbs    时间: 2016-6-1 14:00
this.sy = driver.findElement(By.xpath("//*[@id='rollBox0']/li[1]/a"));  //系统管理
this.yhgl = driver.findElement(By.xpath("//*[@id='rollBox0']/li[2]/a"));  //用户管理
this.xtgl = driver.findElement(By.xpath("//*[@id='rollBox0']/li[3]/a"));  //系统管理

作者: lbs    时间: 2016-6-1 14:01
this.sy = driver.findElement(By.xpath("//*[@id='rollBox0']/li[1]/a"));  //首页
this.yhgl = driver.findElement(By.xpath("//*[@id='rollBox0']/li[2]/a"));  //用户管理
this.xtgl = driver.findElement(By.xpath("//*[@id='rollBox0']/li[3]/a"));  //系统管理




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2