六安沧州西安三亚宝鸡菏泽
投稿投诉
菏泽德阳
山西湖州
宝鸡上海
茂名内江
三亚信阳
长春北海
西安安徽
黄石烟台
沧州湛江
肇庆鹤壁
六安韶关
成都钦州

定位页面元素的几种方式

  对于有点开发经验的人来说学习这个定位其实相对容易很多,只要你写过前端js方面的代码,基本上seleniumwebdriver的元素定位方式一看就懂,当然也有几个需要特别注意(如By。xpath),需要深入的去了解一些,毕竟在实际使用中还是挺频繁的,下面依照常用amp;gt;不常用的顺序介绍seleniumwebdriver定位元素的几种方式:
  下图是通过firebug调试定位到的百度搜索框:
  1。By。id
  2。By。name
  同样,将控件所对应的name属性找到即可
  3。By。xpath
  这个方法非常重要,会经常使用到,使用这种方式几乎可以定位到任意页面上的元素。如图所示,将用xpath(页面中元素的路径)来定位我们需要用到的元素
  该图所对应的页面上的标签:
  通过路径来定位控件,分为:绝对路径、相对路径(这个概念对应做过开发的人来说非常熟悉,不错与我们开发中的绝对路径相对路径非常相似),那么通过seleniumwebdriver的xpath方式定位元素需要注意:
  a。绝对路径以表示,相对路径以表示
  当xpath路径以开头时,表示从页面的根节点开始解析;当出现在xpath路径中时,表示寻找父节点的直接子节点。
  当xpath路径以开头时,表示从页面上任意符合的元素节点开始解析;当出现在xpath路径中时,表示寻找父节点下任意符合条件的子节点。
  弄清楚它们各表示什么意思以后,就可以在实际应用中绝对路径相对路径混合使用。
  下面是相对路径引用写法:
  查找页面根元素:
  查找页面上所有的input元素:input
  查找页面上第一个form元素:form〔1〕
  查找页面上第一个form元素内的直接input(即第一个input控件)元素:form〔1〕input
  查找页面上第一个form元素内所有的input元素(只要在form元素内的input都算,不管嵌套了多少个其它标签,此时可使用相对路径):form〔1〕input
  查找页面上id为loginForm的form元素:form〔idloginForm〕
  查找页面上id为loginForm的form元素下第一个input元素:form〔idloginForm〕input
  查找页面上id为loginForm的form元素下第4个input元素:form〔idloginForm〕input〔4〕
  查找页面上name属性为username的input元素:input〔nameusername〕
  查找页面上name属性为contiune且type属性为button的input元素:input〔namecontiune〕〔typebutton〕
  4。By。tagName
  通过元素的标签名称来查找元素。该方法与By。id、By。name不同,通常By。tagName查询出来的元素不止一个,可能会有多个,所以,使用该方法时会结合findElements来用,如下:
  Listlt;webelementgt;inputElementsdriver。findElements(By。tagName(input));lt;webelementgt;
  for(WebElementinput:inputElements){
  if(input。getAttribute(type)。equals(text)){
  System。out。println(input。getText());
  }
  }
  在页面中,使用input标签的有:文本框单选框复选框下拉框密码框。。。,只有type属性不同
  5。By。className
  利用元素的css样式来查找元素。如下页面代码,通过className来查找对应的
  标签
  WebElementelementdriver。findElement(By。className(bmiinfo));
  在我学习的过程中,结合tagName,className来获取BMI的值,如下:
  先获得className为bmiinfo的
  元素,该元素内仅有一个span,这时就可以通过tagName获得该span,代码如下:
  WebElementbmiElementdriver。findElement(By。className(bmiinfo))。findElement(By。tagName(span));
  StringactualBMIbmiElement。getText();
  6。By。cssSelector
  cssSelector这种元素定位方式跟xpath比较类似,但执行速度较快,而且各种浏览器对它的支持都相当到位,所以功能也是蛮强大的。
  下面是一些常见的cssSelector的定位方式:
  定位id为flrs的div元素,可以写成:flrs注:相当于xpath语法的div〔id’flrs’〕
  定位id为flrs下的a元素,可以写成flrsamp;gt;a注:相当于xpath语法的div〔id’flrs’〕a
  定位id为flrs下的href属性值为forexampleabout。html的元素,可以写成:flrsamp;gt;a〔hrefforexampleabout。html〕
  如果需要指定多个属性值时,可以逐一加在后面,如flrsamp;gt;input〔nameusername〕〔typetext〕。
  7。By。linkText()
  通过超文本链接上的文字信息来定位元素,这种方式一般专门用于定位页面上的超文本链接
  WebElementlinkElementdriver。findElement(By。linkText(新闻));
  8。By。partialLinkText()
  该方法时By。linkText的扩展,当你不能准确知道超链接上的文本信息或者只想通过一些关键字进行匹配时,可以使用这个方法来通过部分链接文字进行匹配
  WebElementlinkElementdriver。findElement(By。partialLinkText(新));
  1。当页面元素有id属性时,最好尽量用id来定位。但由于现实项目中很多程序员其实写的代码并不规范,会缺少很多标准属性,这时就只有选择其他定位方法。
  2。xpath很强悍,但定位性能不是很好,所以还是尽量少用。如果确实少数元素不好定位,可以选择xpath或cssSelector。
  3。当要定位一组元素相同元素时,可以考虑用tagName或name。
  4。当有链接需要定位时,可以考虑linkText或partialLinkText方式。

壁挂空调安装高度空调是目前家装的常用电器,虽然不需要我们亲自安装,但是对壁挂式空调安装流程做出一些了解也还是有必要的。空调安装不好会造成漏水、制冷制热效果不强劲、噪音等问题。那么,壁挂式空调该……充气帐篷能在冬天用吗进帐篷休息时把登山徒步鞋鞋尖向外摆放好,除夜晚露营所需要的睡袋枕头等物外,其他的物品必须收拾整齐放于背包里,摆放在帐篷出口的外帐帐檐里,这样如果夜晚有紧急情况发生时,起来就能穿……游泳抽筋的自救方法经常听人说游泳时抽筋有多可怕,好在自己还没有过这样的经历。也经常去游泳,却发现很少有人认真地做好游泳前的准备活动,以致游泳时腿脚不听使唤的抽上了,如果游泳技术不太熟练,已进入深……孕妇侧睡枕多高合适较大月份的孕妇都需要一个孕妇侧睡枕,但是孕妇枕的大小高度都是有一定的要求的,那么孕妇侧睡枕多高合适呢?接下来我们本站的小编为您具体介绍一下。侧睡枕是一种孕妇专用的孕妇枕,……蠕虫病毒可以通过邮件传播吗许多最常见的计算机病毒和其他恶意软件均通过电子邮件附件(随电子邮件一起发送的文件)传播。如果附加到电子邮件的文件含有病毒,当您打开文件附件(通常通过双击附件图标)时,病毒通常会……孕妇感冒喝热水有用吗在怀孕的这个期间,孕妇的身体通常是比较虚弱的,容易受到一些病毒和病菌的传染,孕妇在感冒的时候,孕妇感冒喝热水有用吗?就让本站的小编和你一起去了解一下吧!孕妇感冒喉咙痛,喝……孕前牙齿检查注意事项女性在孕前检查中,不能忽视牙齿的检查,否则会对孕期的口腔问题有极大的影响,那么孕前牙齿检查注意事项有哪些呢?下面就跟着本站小编一起来看一下吧!孕前牙齿检查注意事项检……中老年人中风的前兆与预防有哪些呢冬季是中老年人中风发病率最高的时期,特别是患有高血压等疾病的人群,且年龄越大危险性越高,55岁以后的老年人发病率会大大增加。40岁以上有多年高血压病史,血压流变学多项指标异常的……夏日宝宝怎样预防出现痱子症状痱子是宝宝最常见的疾患,处理得当,对宝宝无大碍。处理不当,不仅宝宝不舒服,还易发生并发症,影响宝宝健康发育。爸爸妈妈和家人要格外重视哦,下面来看看夏日宝宝怎样预防出现痱子症状吧……无痛分娩让自然分娩不再可怕对于打算顺产的准妈妈来说,要提前做好心理准备,多阅读一些这方面的书籍,了解顺产的过程和应对方法,要保持稳定的心情,一旦宫缩开始,积极配合医生,相信在医生和助产士的帮助下自己会安……煤气管道减压阀管道减压阀是一种无论气体的流量和上游压力如何变化,都能保持下游压力稳定的装置,煤气管道减压阀是什么?一起和本站了解下吧。煤气减压阀是采用控制阀体内的启闭件的开度来调节介质……预防儿童近视环境很重要现在的高科技产品越来越多,例如电脑,电视,手机等,爸爸妈妈又不太会控制引导,导致越来越多的孩子都戴上了近视眼镜。小儿近视指眼睛在调节放松时,平行光线通过眼的屈光系统屈折后点落在……
刀切面的做法首先准备好面条,然后再将猪肉切丝,把木耳和菠菜处理好,然后再煮猪肉,接着放入菠菜和其他配料,最后放入面条即可哦。刀切面是一道很常见的快餐小吃哦,而且做法很简单,因此,深受……淘宝订单编号在哪看淘宝运单号在哪里看aclasstaghrefwiki10925IQxh7ZZ34。html淘宝a订单编号在哪看呢?淘宝运单号在哪里看呢?下面小编来教大家。操作方法01:hr首先,我们……快手怎么与别人合拍视频拍同框aclasstaghrefwiki10790IF35ZKy87。html大家a好,小编在这里教大家快手怎么与别人合拍视频拍同框操作方法01:hr首先,我们选择点击打……怎样用手机修图软件做出逼格超高的照片操作方法01:hr打开你所选择的修图软件,然后打开你想要修改等我图片。02:hr滤镜是最重要的,因为它奠定了你所修改图片的基本颜色。选片一款与图片想符合的滤镜可以有……怎么洗干净床单上的经血女性成年之后大部分每个月都会来一次aclasstaghrefwiki10863IQceeCo16。html月经a,这时女性十分的苦恼,尤其是月经量大的女性,白天还好上厕所频繁一……你是时光留下的温柔古往今来,有多少圣贤感叹时光流逝,人生短暂恰似一场梦,可是又无奈地被时光牵着鼻子走,湮没在时光的长河中,天地间徒留一声叹息。青春期里我们会张望,会幻想,会在晴天的日子里张……逆境中的开最美挫折与磨难伴随我们一生。有时带来如入重围的失措与迷茫,有时让我们无力睁眼,心灰意冷。在这些大大小小的磨难,不缺打击沉重的那一个。挫折与磨难时常如影随形。我们面对它们时我们……我以篮球为知己知己,也就是一个对你无所不知的朋友,当然,这里所讲的知己,并不是一个人,而指的是陪伴了我七、八年岁月的篮球。当我第一次接触它的时候,我并不知道这会对我产生怎么样的影响,更……假如我是发明家假如我是一个发明家,我会发明人们不敢想象的东西。首先,我要发明驱蚊衣。蚊子是最令人讨厌的东西,走到哪里叮到哪里,侵害人体,传播疾病。带杀虫剂又不方便,再说杀虫剂对人体也有……捉蜻蜓在一个阳光明媚的周末,我和几个小伙伴一起在公园游玩。突然,我们眼前一亮,看见一只蜻蜓落在花丛中。我们低着头,弯着腰,眼睛瞪得像鸡蛋一样大。这只蜻蜓它翅膀晶莹透亮,身体细细……第一次打篮球我们的生命长河中,往往有很多很多的第一次:第一次骑车、第一次做饭、第一次下棋,诸如此类的第一次经常给我们很深的印象,但我印象中最难忘的就是第一次打篮球的情景。打篮球这项运……大头儿子小头爸爸读后感暑假到了,妈妈给我在新华书店买了我喜欢的书《大头儿子小头爸爸》,我可开心了。我迫不及待就拉着爸爸一起分享。以前我最喜欢看《大头儿子小头爸爸》的动画片。这个暑假,我认真阅读……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网