Selenium-02-常用元素定位
时间:2022-07-26
本文章向大家介绍Selenium-02-常用元素定位,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。
常用8种的元素定位
- id ---->find_element_by_id()
- class name ---->find_element_by_name()
- class ---->find_element_by_class_name()
- tag---->find_element_by_tag_name()
- link ---->find_element_by_link_text()
- partial link ---->find_element_by_partial_link_text()
- xpath---->find_element_by_xpath
- css ---->find_element_by_css_selector()
测试实例
这里以Chrome浏览器百度为例:
1.根据id ---->find_element_by_id()定位
- 这里id对应的元素为kw,send_keys为键盘输入'Cypress端到端'。
- find_element_by_id('kw')
- find_element_by_id('su')
2.根据class name ---->find_element_by_name()
- 这里name对应的元素为wd
- find_element_by_name('wd')
3.根据class ---->find_element_by_class_name()
- 这里class 对应的为's_ipt'
- find_element_by_class_name('s_ipt')
4.根据tag---->find_element_by_tag_name()
- 这里tag对应的标签为input
- find_element_by_tag_name('input')
5.根据link ---->find_element_by_link_text()
- 这里link对应的标签为如下图
- find_element_by_link_text('新闻')
6.根据partial link ---->find_element_by_partial_link_text()
- 这里partial link对应的标签为如下图
- find_element_by_partial_link_text('新')
7.根据xpath---->find_element_by_xpath()
- 这里xpath对应
- find_element_by_xpath('//*[@id="kw"]')
8.根据css ---->find_element_by_css_selector()
- 这里css对应#kw
- find_element_by_css_selector('#kw')
"""
* Create by dell on 2020/9/23
* Author :wencheng
* 微信公众 :自动化测试 To share
"""
from selenium import webdriver
class run_case(object):
def __init__(self):
self.C_driver = webdriver.Chrome()
def run_baidu(self):
self.C_driver.get("http://www.baidu.com")
# 常用定位方式
self.C_driver.find_element_by_id('kd').send_keys("Cypress端到端")
self.C_driver.find_element_by_name('wd').send_keys("Cypress端到端")
self.C_driver.find_element_by_class_name('s_ipt').send_keys("Cypress端到端")
self.C_driver.find_element_by_tag_name('input').send_keys("Cypress端到端")
self.C_driver.find_element_by_xpath('//*[@id="kw"]').send_keys("Cypress端到端")
self.C_driver.find_element_by_css_selector('#kw').send_keys("Cypress端到端")
self.C_driver.find_element_by_id('su').click()
self.C_driver.find_element_by_link_text('新闻').click()
self.C_driver.find_element_by_partial_link_text('新').click()
if __name__ == '__main__':
run_case().run_baidu()
总结:selenium的webdriver提供了八种基本的元素定位方法,前面六种是通过元素的属性来直接定位的,后面的xpath和css定位更加灵活。以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家的支持。更多文章关注小编公众号:自动化测试 To share
- EMLOG无插件实现网站源码压缩
- CSS魔法堂:盒子模型简介
- 协议森林06 瑞士军刀 (ICMP协议)
- Emlog博客系统IIS 7/8伪静态
- Weblogic魔法堂:AdminServer.lok被锁导致启动、关闭域失败
- CentOS6.5菜鸟之旅:安装VirtualBox4.3
- CentOS6.5菜鸟之旅:VirtualBox4.3识别USB设备
- Eclipse魔法堂:修改主题
- 面试题(一)关于内部类的面试题
- MyBatis魔法堂:各数据库的批量Update操作
- 在Win7的IIS上搭建FTP服务及用户授权
- JavaSE(四)之接口、访问控制
- 3X3 九宫格
- JS魔法堂:通过marquee标签实现信息滚动效果
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- CF--思维练习--CodeForces - 219C Color Stripe (思维)
- 疯子的算法总结(六) 简单排序总 选择排序+插入排序+比较排序+冒泡排序
- C语言基础知识总结
- CF思维联系--CodeForces - 218C E - Ice Skating (并查集)
- 数组及字符串相关知识
- C++循环结构
- C++条件分支结构
- USACO Training Section 1.1 贪婪的送礼者Greedy Gift Givers
- 数学--数论--HDU--5878 Count Two Three 2016 ACM/ICPC Asia Regional Qingdao Online 1001
- ACM-ICPC 2019 山东省省赛D Game on a Graph
- 数学--数论--HDU6919 Senior PanⅡ【2017多校第九场】
- 数学--数论--Alice and Bob (CodeForces - 346A )推导
- ACM-ICPC 2019 山东省省赛 M Sekiro
- 数学--数论--HDU2136 Largest prime factor 线性筛法变形
- ACM-ICPC 2019 山东省省赛 C Wandering Robot