当前位置: 首页 > news >正文

Day 3:定位策略进阶

适用人群:掌握基础定位,想应对更复杂的页面结构
预计耗时:10 分钟
目标:学会 CSS 选择器、XPath、getByRole 等进阶定位方法


今天学到的定位方法

定位方法语法示例适用场景
getBylocator#divWithBeforePseuodoEl / //div[contains(text(),‘Inner’)]CSS 选择器或 XPath
getBylocatorNthspan
getByTextExactspannn精确文字匹配
getByRoleByCheckBoxabcd按角色定位 checkbox
getByRoleByRadioKey Up按角色定位 radio
getByPlaceholderEnter Email占位符定位

上传并执行 day03_step.xlsx

文件包含 2 个用例。


spandiv 用例

页面:spandiv.htm,包含各种 span 和 div 结构

步骤定位方式定位值说明
CSS 定位getBylocator#divWithBeforePseuodoElCSS ID 选择器
XPathgetBylocator//div[contains(text(),‘Inner’)]XPath 层级定位
第 N 个getBylocatorNthspan
精确文本+存储getByTextExact → 存储变量spannn → actualText取文本并存为变量
断言验证assert@actualText

checkbox 用例

页面:label.htm + keypress.htm,包含标签化复选框、单选框和占位符输入框

步骤定位方式定位值说明
打开表单页navigateTolabel.htm带标签和占位符的页面
勾选复选框getByRoleByCheckBoxabcd按角色定位 checkbox
输入搜索框getByPlaceholderEnter Email按 placeholder 定位
打开单选页navigateTokeypress.htm切换页面
选中单选框getByRoleByRadioKey Up按角色定位 radio


getBylocator 详解

getBylocator 是最灵活的定位方式,支持 CSS 和 XPath 两种语法。

CSS 选择器示例

写法含义
#btnIdid 为 btnId 的元素
.btnClassclass 为 btnClass
div > spandiv 的直接子元素 span

XPath 示例

写法含义
//div[@class=x]所有 class=x 的 div
//input[@name=username]name=username 的 input
//button[contains(text(),Submit)]文字含 Submit 的按钮

N 后缀定位

方法说明
getBylocatorNthselector
getByFirstlocator第一个元素
getByLastlocator最后一个元素

动手练习

  1. 用 getBylocator 写一个 XPath 选中 spandiv 页面中的 inner 元素
  2. 用 getByRoleByCheckBox 在 label.htm 页面勾选some bold text复选框
  3. 用 getByPlaceholder 定位 label.htm 页面的Enter Password输入框

执行结果


下一篇预告:Day 4 — 元素操作基础

http://www.jsqmd.com/news/1151516/

相关文章:

  • 2026 降AI率网站深度实测:不踩雷攻略,毕业党救急宝典
  • 使用Vue3组合式API重构大型组件逻辑
  • 共现网络原理与《釜山行》项目环境搭建(一)
  • 踏入次世代数字世界:虚幻引擎(Unreal Engine)全景指南
  • 新优化组合黄金分割单阳不破趋势飘带买卖点通达信主图源码、买卖点无未来
  • 存在强度:知识图谱中实体显著性的拓扑-语义协同度量框架(世毫九实验室原创研究)
  • 线代笔记:通俗理解行变换法求A⁻¹B
  • Nginx Unit的动态配置与语言模块
  • 来自圳天帝的新人介绍
  • 【SQL 专栏】1. 零基础入门!4 个语法搞定薪资报表查询
  • 5分钟快速上手:PvZ Toolkit植物大战僵尸修改器完整指南
  • 三维光学轮廓仪选型:三款国产设备横向解读
  • 4个国产模型组队PK一个旗舰模型,成本只要1/3——OpenSquilla 0.5.0多模型Agentic Routing vs 6大旗舰深度横评
  • 国产AI编程模型怎么选?几个月消耗50亿Token后,我的一些真实感受
  • 为什么Agent越来越聪明,却越来越难进入企业?丨FDE重新理解Agent工程
  • CoT ≠ 分步写,而是认知压缩术:一位NLP首席科学家的8年链式建模心法
  • 从AI行业大奖看下一代人工智能技术趋势与工程实践
  • RAG 检索优化:混合搜索、Reranking、多路召回
  • 力扣hot100简单题(三)
  • 基于Java的健身房管理系统
  • LangChain Agent 入门实战:从报错到跑通带记忆的交互式智能体(初学者保姆级教程)
  • 开源分析-joyagent多模态RAG实现
  • 半导体供应链安全与国产化替代实战指南
  • GLM5.2模型自部署实战:vLLM加速与量化技术实现推理性能超越
  • 曲辕RPA-激活曲辕办公软件
  • 运维与后端的绝对刚需之 Linux 性能调优与故障排查
  • 预算有限怎么选论文 AI 工具?高性价比口碑清单 + 避坑提醒
  • CoreDNS 调优:NDots 设不对,每次 DNS 查询都多走一步
  • 华为MetaERP 先把你那个前提纠一下——“华为 MetaERP 基本原理和 Oracle EBS 一致“这个说法不太准,得区分“功能表层“和“架构原理“:EBS 原理:R12 是单体 SOA +
  • 渲染管线选型实战:Forward+ 与 Deferred 的权衡及实时光追落地考量