元素定位演示 · Class 属性定位

系统学习 By.CLASS_NAME 的核心语法、实操示例与最佳实践

首页 定位导航

By.CLASS_NAME 定位导读

By.CLASS_NAME 是 Selenium 中通过元素 class 属性进行定位的方式。class 原本是 CSS 样式挂钩点,用于给一组元素批量应用相同样式,因此 不要求唯一,最适合用来批量定位同类元素(如所有带 .btn-primary 的按钮、所有商品卡片)。需要特别注意:By.CLASS_NAME 只能传单个 class 名称(不能有空格),如果元素有多个 class(如 class="btn btn-primary"),只能传其中一个;多 class 组合筛选应改用 By.CSS_SELECTOR。此外,class 常被前端构建工具(Webpack/Vite)压缩改名,稳定性不如 By.ID。

By.CLASS_NAME 快速入门
掌握核心语法与定位策略
语法示例
find_element / find_elements 用法
实操练习
交互式练习区实时反馈
By.CLASS_NAME

③ Class 属性定位

通过 class 属性定位(一组元素通常共用同一 class)
定位语法:
单个元素 (find_element)
driver.find_element(By.CLASS_NAME, "card-item")(匹配第一个class属性为card-item的元素)
driver.find_element(By.CLASS_NAME, "primary-btn")(匹配第一个class属性为primary-btn的元素)
多个元素 (find_elements)
driver.find_elements(By.CLASS_NAME, "card-item")(获取所有class属性为card-item的元素)
driver.find_elements(By.CLASS_NAME, "badge")(获取所有class属性为badge的元素)
注意:CLASS_NAME 只能传单个 class 名称,不能有空格。多 class 元素需用 CSS_SELECTOR。
实操练习:By.CLASS_NAME → 查看 Selenium 代码与执行结果

练习区 以下元素带有 demo- 前缀 class,与下方 demo-box 的 card-item / input-text / action-btn 完全隔离。

Python 入门
class=demo-item-card
Web 自动化
class=demo-item-card
接口测试
class=demo-item-card
Python 入门
class="card-item"
Web 自动化
class="card-item"
接口测试
class="card-item"
性能测试
class="card-item"
定位后操作效果展示区域
本区域用于展示:使用 Selenium / JS 定位到上方元素后,执行「点击 / 输入 / 提交」等操作的真实反馈结果。

关于我们

Python 自动化测试学习平台是一个面向软件测试工程师、开发人员及在校学生的交互式在线学习平台,专注于 Selenium WebDriver 与 Python unittest 自动化测试技能的教学与实践。

我们以"理论 + 实战 + 可交互演示"为核心特色,将八种常规元素定位和Javascript定位、元素操作、自动化测试工具、单元测试、测试模型等知识体系拆分为模块化课程,每个模块都配有可点击、可输入、可运行的模拟练习页面。

平台致力于降低自动化测试的入门门槛,让学习者从"看懂代码"到"动手实操",逐步掌握企业级自动化测试框架的设计与落地能力。

联系方式

📧邮箱:lq@selenium-auto-test.com

📞电话:0755-12345678

📍地址:深圳

💬微信公众号:Selenium自动化测试

🐙GitHub:github.com/selenium-auto-test

免责声明

1. 本平台所有示例代码、演示页面及教程内容均仅供学习交流使用,不构成任何商业推广或技术服务承诺。

2. 平台中的 Selenium API 描述、Python 语法说明均以官方文档为准,如有版本差异请以对应官方文档为准。

3. 学习者在实际项目中应用平台所学内容时,应结合自身项目环境进行充分测试,本平台不对因直接使用示例代码而产生的任何直接或间接损失承担责任。

4. 本平台所引用的第三方库(Selenium、ChromeDriver、unittest 等)版权归其各自作者及维护者所有。

5. 如涉及版权问题或内容建议,请及时通过联系方式与我们沟通,我们将第一时间处理。