我是靠谱客的博主 细腻鸵鸟,最近开发中收集的这篇文章主要介绍hibrnate find方法返回_Selenium元素定位的八种方法,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

自动化一般需要四步操作:获取元素,操作元素,获取返回结果,断言(返回结果与期望结果是否一致),最后自动出测试报告。Selenium提供8种元素定位的方法:id,name,class name,link text,xpath,css selector,tag name ,partial link tex。

这八种元素定位方法用python语言表示为:

find_element_by_id()

find_element_by_name()

find_element_by_class_name()

find_element_by_tag_name()

find_element_by_link_text()

find_element_by_partial_link_text()

find_element_by_xpath()

find_element_by_css_selector()

下面以百度的页面为例:

  1. 打开百度首页,如图1
  2. 点击 F12,点击查看器旁的箭头
  3. 鼠标滑动到百度搜索输入框,点击输入框,下方标蓝的就是该输入框的元素属性
ee24d0f8c14d5417da40ea3e4b71a188.png

1.通过id定位元素

从图1可以看到输入框有个id属性:id="kw",这里可以通过它的id属性定位到这个元素,并且通过send_keys()传输字符给输入框。

8e289db7b1ca64e0195af5b139761ff9.png

2.通过class_name定位元素

从图1可以看到输入框有个class属性:class="s_ipt",这里可以通过它的class属性定位到这个元素,并且通过send_keys()传输字符给输入框。

1670e90cac37d7d67a1c3cc0734e7406.png

3.通过name定位元素

从图1可以看到输入框有个name属性:name="wd",这里可以通过它的name属性定位到这个元素,并且通过send_keys()传输字符给输入框。

c3fb3d49dd5b46ebf14a5b8383306089.png

4.通过tag定位元素

从图1可以看到输入框有个tag(标签)属性:input,这里可以通过它的标签属性定位到这个元素,并且通过send_keys()传输字符给输入框。但是标签往往不是惟一的,所有在实际应用中不常用。

cfdcc012808141083d71a073cd9d854e.png

5.通过link_text定位元素

使用定位器,点击“新闻”按钮,定位到该元素,如图2。

4f0e4b7a147a3759550d28c373e31a24.png

新闻

可以看到图2中“新闻”有个href属性为"http://news.baidu.com",属于超链接,这种元素就可以使用link_text进行定位。

e3f385043c9af11ac3366a814924868b.png

6.通过partial_link_text定位元素

如果链接的字符串太长的话,全部输入影响代码美观也容易出错,这时就可以采用 partial_link_text,模糊匹配、截取字符串的一部分定位到元素。如图2中,我们定位新闻可以如下写。

de984129701c1580d7162c6279638c08.png

7.通过xpath定位元素

上面6种方法都是通过元素的某一个属性进行定位,但是如果一个元素没有上述属性或者属性不是唯一时,我们可以使用xpath进行元素定位。

利用浏览器调试功能,定位到元素所在的那一行右键-->Copy-->Copy XPath。

21ed97381bd423487ee396aa325258ee.png
ff1c1b90226f67cdc6ab63c04493abe7.png

8.通过CSS selector定位元素

CSS方法和XPATH是完全不同的语法,通过定位器我们先找到搜索框的css。

7e67ef98429e68fcc28bba7039290ca0.png
f3c0a6211370c5f71b952907c488478e.png

最后

以上就是细腻鸵鸟为你收集整理的hibrnate find方法返回_Selenium元素定位的八种方法的全部内容,希望文章能够帮你解决hibrnate find方法返回_Selenium元素定位的八种方法所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(47)

评论列表共有 0 条评论

立即
投稿
返回
顶部