查找元素的方法_第1页
查找元素的方法_第2页
查找元素的方法_第3页
查找元素的方法_第4页
免费预览已结束,剩余1页可下载查看

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、1、工具选择:在我们开发测试胆圭的过程中各个浏览器给我们也提供了方便定 位元素的工具,我比较喜欢使用firefox的firebug工具,也是U前很多开发测试 人员比较热衷的选择,原因是firefox是唯一能够集成selenium IDE的浏览器, 并且firebug给用户提供了丰富的扩展组件,我们可以根据自己的需要来选择, 一般情况下,使用firebug+firefinder就足够使用了,firefinder支持xpath以及css 选择器定位元素的功能,很方便帮助我们调试测试脚本 2、元素定位的方法:findElementf)与 findElements() findElement()该方法

2、返回基于指定查询条件的webElement对象,或抛出 不符合条件的异常eg: (userID); findElements()该方法返回指定查询条件的WebElement的对象集合,或返 回 null 3、WebElement对象提供的各种定位元素策略 ID: () Name: () className: () tagName: () linkText: () partialUnkText: () css: () xpath: () WebElement hello =ndElementChello); 5、使用WebElements定位多个相似的元素,比如页面中存在五个单选按 钮,他们有相

3、同的class属性,值为:myRadio,我们想对五个按钮循环操作,我 们可以把它们全部取出来放到集合中,然后做循环操作,如下: List radios = (myRadio); for(int i = 0;iinput)该方法中/div#logininputw首先通过相对路径定位 到id为login的div元素,然后查找其子元素input (绝对路径) 二、使用xpath定位元素,相比cssSelector, xpath是我比较常用的一种定 位元素的方式,因为它很方便,缺点是,消耗系统性能 1、使用绝对路径定位元素 (/html/body/div/form/input) 2、使用相对路径定位

4、元素 (“/input)返回查找到的第一个符合条件的元素 3、使用索引定位元素,索引的初始值为1,注意与数组等区分开 (“input2”)返回查找到的第二个符合条件的元素 4、结合属性值来定位元素 (,7/inputid=username); (”imgalt=flow 门”); 5、使用逻辑运算符,结合属性值定位元素,and与or (,7/inputid=username, and name=userlD,); 6、使用属性名来定位元素 (7/inputbutton) 7、类似于cssSlector,使用部分属性值匹配元素 starts-with() (7/inputstars-with(i

5、d. ser1) ends-with (7/inputends-with(idname)!) contains!) (/inputcontains(id. ,ernam)r,) (7/input*=,username,) 9、使用xpath轴来定位元素 这里略了,详见 三、使用innerText定位元素 1、使用cssSelector查找innerText定位元素 (spantextContent=新闻); 2、使用xpath的text函数 (7/spancontains(text(), hello)包含匹配 (7/spantext()=噺闻丁)绝对匹配 81馳动上元素上 moventocl

6、cment () 模拟凰标移动到一个元索卜, II 弓I 入 ActionChains 类 from seleniu m. webdriver c ommon action_chains inr: 鼻定位到鼠标移动到上面的元索 above = driver.find_GlGment_by_xpath(nxxxM) 荐对定位到的元索执行鼠标移动到t:面的操作 ActionChains(driver)m(above)per 4.webelement类提供了诸多方法,在我们开发脚本过程中如何选择最可靠, 效率最髙的方法,使用id, name是首选,因为他们在html标签中是唯一的,所 以是最可幕的

7、ID 定位:(username) name定位: (username4 * * * * * * 11) class 定位:(username11) 多学一招:WebElement类支持查询子类元素,如果页面中存在重复元素, 但在不同div中,我们可以先定位到其父元素,然后定位其子元素,方法如下: 其他定位方法与操作id name类似.这里不再赘述,接下來我肴重对css选择器与Xpath描述下 一、WebDriver的By类中提供f cssSelector()方法,该方法使用有以下几种形式: 1、使用相对路径定位元素 如.我们要定为DOM中的input元素,我们可以这样操作,不考世其在DOM中的位覧 但这样做存 在一定腮端.DOM中存在多个input元素时,该方法总返回DOM中的第一个元素,这并不是我们所期 待的 eg: WebElement username = (input1); 另外,为使用这种方法见准确的定位元素,我们可以结合该元素的其他屈性來实现精确定位的目的 a、结合id來定位,(”input#usernamy);在标签与id之间使用件连接.如果对css 了解的朋友一看就

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论