Web UI 自动化(第一节),常用元素定位方法

刷了哔哩哔哩一个讲web ui 自动化的视频,为了能让自己坚持看下去,决定每节课整理笔记。附上视频的链接地址,感兴趣的小伙伴可以去看一看,老师讲的比较细致。有问题可以一起讨论下。
https://www.bilibili.com/video/BV1zi4y1F7AY?p=4
1.通过id定位
driver.find_element(By.ID, 'kw').send_keys("软件测试")
2.通过name定位元素
driver.find_element(By.NAME, 'wd').send_keys("软件测试")
3.通过链接文本定位(针对a标签——超链接文本)
driver.find_element(By.LINK_TEXT, '新闻').click()
4.通过部分链接文本定位(针对a标签——超链接文本)
driver.find_element(By.PARTIAL_LINK_TEXT, "闻").click()
5.xpath定位
(1)绝对路径:不使用
driver.find_element(By.XPATH, "/html/body/div[1]/div[1]/div[5]/div/div/form/span[1]/input").send_keys("软件测试")
(2)相对路径+索引定位,页面中有多个span,指定索引为span[1]
driver.find_element(By.XPATH, "//form/span[1]/input").send_keys("软件测试")
(3)相对路径+属性定位,用@符指定某个属性
driver.find_element(By.XPATH, "//input[@autocomplete='off']").send_keys("软件测试")
(4)相对路径+通配符定位://input[@id='kw'] => //*[@id='kw']或 //*[@*='kw']
driver.find_element(By.XPATH, "//*[@id='kw']").send_keys("软件测试")
(5)相对路径+部分属性值定位
# autocomplete属性,以of开头
driver.find_element(By.XPATH, "//*[starts-with(@autocomplete,'of')]").send_keys("软件测试")
# autocomplete属性,从第二个字符开始,后面的字符为ff(以ff结尾)
driver.find_element(By.XPATH, "//*[substring(@autocomplete,2)='ff']").send_keys("软件测试")
# # autocomplete属性中包含of字符
driver.find_element(By.XPATH, "//*[contains(@autocomplete, 'of')]").send_keys("软件测试")
(6)相对路径+文本定位,适用于非超链接文本定位
class_attribute = driver.find_element(By.XPATH, "//span[text()='按图片搜索']").get_attribute('class')
打印class_attribute属性,验证元素是否获取成功
print(class_attribute)
6.css定位(看网上有前辈说xpath和css掌握一个即可,也有前辈说建议使用css,xpath会全局搜索比较耗时,后续再慢慢学习)
(1)绝对路径:不使用 
(2)通过ID和class定位 
(3)通过属性定位 
(4)通过部分属性定位 
(5)查询子元素定位 
(6)查询兄弟级定位

程序示例:
from selenium import webdriver
from selenium.webdriver.common.by import By
import time

# 打开浏览器
driver = webdriver.Chrome()
# 获取网页
driver.get("https://www.baidu.com")

# 通过id定位元素
driver.find_element(By.ID, 'kw').send_keys("软件测试")

time.sleep(10)

driver.close()

今日知识点:

1、使用find_element(By.ID, 'kw'),而不是find_element_by_id('kw'),便于后期程序封装

2、谷歌浏览器,选中元素后右键“检查”,可以进入调试页面,查看元素各种属性

3、调试页面选中属性,右键copy-copy path可以复制xpath相对路径,但复制的路径用于测试容易出错,可以参考并修改为适合自己的路径

4、在调试页面按ctrl+F,可以在页面下方显示搜索框,搜索框中输入Xpath路径可以根据检索到的结果检查自己写的xpath路径是否正确

5、无论通过何种方式定位,均需唯一对应到一个元素

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值