Web UI自动化测试基础——元素定位(二)

本篇文章整理了元素定位的基础知识——多个元素定位方式

一、多个元素定位方式简介

  同单个元素定位方式相同,多个元素定位方式也有与之对应的8种方式,即id、name、class_name、tag_name、link_text、partial_link_text、xpath和css_selector。不同的是方法名中element需要写成复数形式。多个元素定位得到的结果通常是一个列表类型,可以通过索引方式访问具体元素。

二、实例

  以百度首页为例,通过find_elements_by_tag_name方式进行演示。如图所示,共有15个标签名为input的元素,其中第8个是百度搜索框,第9个是‘百度一下’的搜索按钮,对应下标分别是7和8。

图1

复制代码
 1 import time
 2 
 3 from selenium import webdriver
 4 
 5 # 创建driver实例
 6 driver = webdriver.Chrome()
 7 # 打开百度首页
 8 driver.get('https://www.baidu.com')
 9 # 通过tag_name属性找出百度首页中的所有input元素
10 inputs = driver.find_elements_by_tag_name('input')
11 # 打印inputs类型
12 print(type(inputs))
13 # 打印inputs长度
14 print(len(inputs))
15 # 遍历inputs,打印列表中的每个元素
16 for i in range(len(inputs)):
17     print('{0} : {1}'.format(i, inputs[i]))
18 # 在百度搜索框中输入input进行搜索
19 inputs[7].send_keys('input')
20 inputs[8].click()
21 # 等待2秒
22 time.sleep(2)
23 # 退出驱动程序并关闭浏览器
24 driver.quit()
View Code
复制代码

 

posted @   cnblogs_0  阅读(417)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· Qt个人项目总结 —— MySQL数据库查询与断言
点击右上角即可分享
微信分享提示