Python+webdriver定位元素的几种方法

一、selenium定位元素的几种方法

selenium2.0=selenium1.0+webdriver

selenium定位元素的几种方法:WebDriver,selenium IDE,selenium Grid

  • Selenium IDE:一个Firefox插件,可以录制用户的基本操作,生成测试用例。随后可以运行这些测试用例在浏览器里回放,可将测试用例转换为其他语言的自动化脚本。

  • Selenium Remote Control (RC) :支持多种平台(Windows,Linux,Solaris)和多种浏览器(IE,Firefox,Opera,Safari),可以用多种语言(Java,Ruby,Python,Perl,PHP,C#)编写测试用例。

  • Selenium Grid :允许Selenium-RC 针对规模庞大的测试案例集或者需要在不同环境中运行的测试案例集进行扩展。

二、webdriver+python定位元素的几种方法

1.通过id定位 find_element_by_id()

2.通过name定位 find_element_by_name()

3.通过class name定位 find_element_by_class_name()

4.通过tag name定位 find_element_by_tag_name()

5.通过link定位 find_element_by_link_text()

6.通过partical link定位 find_element_by_partical_link_text()

7.通过xpath定位 find_element_by_xpath()

8.通过css定位 find_element_by_css_selector()

注:

1.patical link即部分文本,定位时只需要输入部分文本,如超链接文本为"去付款吧",使用link定位及find_element_by_link_text('去付款吧'),使用partical link定位find_element_by_partical_link_text('付款')

2.tag name 相同的概率很高

3.xpath定位分为绝对路径和相对路径,绝对路径以'/'开头,相对路径以'//'开头

4.css定位中,id用'#',class用'.',如定位<div class="subdiv">使用find_element_by_css_selector('.subdiv'),定位<ul id="recordlist">使用find_element_by_css_selector('#recordlist')

5.id/name/class/link/xpath是webdriver中最常用的定位方法

三、CSS选择器

定位</from>

find_element_by_css_selector(‘from’)

定位<div class="subdiv">

find_element_by_css_selector(‘.subdiv’) find_element_by_css_selector(‘from+div’)

定位<ul id="recordlist">

find_element_by_css_selector(‘#recordlist’)
find_element_by_css_selector(‘ul#recordlist’) find_element_by_css_selector(‘div>ul’)

定位<p>Heading</p>

find_element_by_css_selector(‘div>ul’)find_element_by_css_selector(‘div.subdiv > ul > p’)

四、HTML DOM Document 对象方法

document.getElementById( )
document.getElementsByName( )
document.getElementsByClassName( )
document.getElementsByTagName( )

注释:传递给 getElementsByTagName() 方法的字符串可以不区分大小写

document.querySelector( )
document.querySelectorAll( )
(0)

相关推荐

  • Python删除list里的重复元素有几种方法?

    公众号新增加了一个栏目,就是每天给大家解答一道Python常见的面试题,反正每天不贪多,一天一题,正好合适,只希望这个面试栏目,给那些正在准备面试的同学,提供一点点帮助! 小猿会从最基础的面试题开始, ...

  • 每周学点测试小知识——WebDriver定位元素

    跟着芒果一起,好好学习,天天向上~ 上周四下午的公开课是芒果给大家介绍的自动化相关知识--WebDriver定位元素,在这里芒果给大家做个小介绍: 下面是这次课程的思维导图: 这里我们先来看看tag ...

  • python实现矩阵转置的几种方法

    文章目录 (1)方法一.使用numpy转置 (2)方法二.使用zip()函数 (3)方法三.使用python列表表达式[不占用额外空间,"原地修改"] (4)方法四.新建列表B,使 ...

  • Python 中交换变量的 3 种方法

    2021-10-16 使用临时变量 交换两个变量值的最简单方法是使用temp变量.该temp变量用来存储拳头变量的值(temp = a),允许你交换两个变量的值(a = b),然后分配的值temp到所 ...

  • python中统计计数的几种方法

    打开QQ浏览器,查看高清大图 以下实例展示了 count() 方法的使用方法: 打开QQ浏览器,查看高清大图 以上实例输出结果如下: 1) 使用字典dict() 循环遍历出一个可迭代对象中的元素,如果 ...

  • Selenium2+python自动化65-js定位几种方法总结

    前言 一.以下总结了5种js定位的方法 除了id是定位到的是单个element元素对象,其它的都是elements返回的是list对象 1.通过id获取 document.getElementById ...

  • selenium基础:元素定位的8种方法

    元素定位一共有8种方法id唯一的name元素的名称class name元素的类名tag name标签,不推荐,重复率太高link text文本链接partial link text对文本链接的一种补充 ...

  • 手机定位的三种方法,为了防止被“追踪”,希望大家知道|位置服务|手机号|gps|基站|wifi

    人们在出行的时候,经常会遇到陌生的环境,尤其是司机在上高速之前都会开导航.要是没有导航的指引,根本不知道该往哪条路走.这是运用导航得知路线的一种方式,也许有人会感到好奇,手机是如何知道的自己的位置,从 ...

  • Python | 有序序列中元素的查找问题解决方法

    问题描述示例:如何查找有序序列中某一的元素输入:[1,2,3,4,5,6,--,100]   61 #查找的元素输出:61解决方案查找元素.一般地,我们可以用for循环进行遍历,再用if语句进行查找. ...