LocatingElements(一)
在正式创建测试项目之前有必要详细介绍下怎么样去寻找页面元素,当然就是根据网页元素的属性了,想必大家一定都很熟知常用的浏览器比如Chrome和Firefox了,一般化在网页上选中你想查看的元素然后右击审查元素就可以看到该元素的属性了,知道了这些元素属性又怎么和webdriver结合起来呢?下面就来介绍下webdriver locate elements的方法,webdriver中用findElement(By.**())关键字来locate 元素
成都创新互联是一家专业提供赣州企业网站建设,专注与成都网站设计、网站建设、外贸网站建设、H5网站设计、小程序制作等业务。10年已为赣州众多企业、政府机构等服务。创新互联专业网站建设公司优惠进行中。
第一种最快也是最方便的方法::By ID
通常网页上的元素会有一个唯一识别的ID 就像我们的×××一样,它用来唯一标识某元素,WebDriver通过这种方法去发现元素的语法很简单
driver.findElement(By.id("*****")); 这里只要知晓元素的相对应的id就可以找到该元素了,也许会有人说我怎么知道id?直接检查页面元素就可以的在html代码中看到你想要的元素的id了,比如百度页面的搜索框相对应的html代码为:这里可以清楚的看到该文本框的id为kw,相应的发现元素代码就应该为:driver.findElement(By.id("kw")); 注意:不是所有的元素都有id,这个要根据但是开发的设计。
第二种方法:By Name
driver.findElement(By.name("****"));这里只要知道相对应的元素的name就可以成功的找到元素了,还以百度首页的搜索框为例,搜索框的name为wd,相应的代码应为driver.findElement(By.name("wd"));当然也不是所有的元素都有name。
第三种方法:By xpath
driver.findElement(By.xpath("****"));这里主要是通过元素的xpath来定位元素的,xpath的知识有兴趣的可以访问http://www.w3school.com.cn/xpath/去了解下,这里不做介绍,下面介绍几种即使你完全不懂xpath的语法你也照样可以运用xpath来发现元素的方法:
#1利用firefox的xpath插件在add-on中搜索xpath,然后选择 xpath checker,安装完成后,就可以运用xpath了,比如我想得到百度首页logo的xpath值只要把光标移到图片上右击view xpath 就可以得到xpath的值了:id('lg')/x:img,所以这里相对应的代码就应该为:driver.findElement(By.xpath("id('lg')/x:img"))
#2利用chrome的xpath插件,这个插件个人感觉比firefox下的插件更好用,出错的几率也相应的小了很多,该插件为PsychoXpath:https://chrome.google.com/webstore/detail/psychoxpath/bpnigkcdmnofjkmojlopmelmhgpbndog 安装成功后,选定相应的元素右击你可以选择绝对路径(Absolute),这里不推荐这种绝对路径的,强烈推荐第二种(short),当然你也可以highlight元素,自己试试绝对感觉很有意思。
获取到相应的xpath后就可以把值相应的替换到driver.findElement(By.xpath(""))中就可以了。
分享标题:LocatingElements(一)
网页网址:http://scyanting.com/article/pceoip.html