770.【技术】相对路径的两大踩坑心得

简介: 770.【技术】相对路径的两大踩坑心得

hi~,我是测试人芸芸,一枚北漂女程序员,八小时外玩古筝。


最近,一周多,一直在优化写好自动化脚本1.0中的元素定位路径。


就是把之前脚本中元素定位的绝对路径优化成相对路径。


现在已经完成了90%,大坑小坑,都没少踩。现在分享两个踩坑心得。


一、不要拘泥于某种元素定位

在开始优化时,我还纠结主攻css还是xpath呢,后来,发现两种方式都学会。能抓到老鼠最重要。


碰到了不少一种方法行不通,或者比较繁琐,通过另外一种方式,就可以轻松定位的情况。


比如:我今天就遇到。用css定位的路径在控制台可以点击,到了脚本中,就一直报错信息提示:元素不可交互。


经过排查,才发现原来这种元素存在两个,换成XPATH后,这个问题才解决。


还有一些元素,用XPATH相对路径会在查到大量的相同元素,然而使用css后,这个问题就迎刃而解。


二、使用小工具辅助定位

自动知道了在element界面使用Ctrl+F,弹出一个输入框。


这里面可以输入你要输入的相对路径。在这里面输入后,可以让你初步直接判断自己写的相对路径是否正常。


如果可以直接找到元素,可以直接去控制台进行下一步验证。找不到,就说明你用的元素方法不对,赶紧换。


总结:

一、不要拘泥于某种元素定位。

重要的是可以抓到老鼠。


二、使用小工具辅助定位。

element界面,使用Ctrl+F,弹出一个输入框。

相关文章
|
人工智能 文字识别 达摩院
阿里云文字识别(OCR)服务 Quick Start
阿里云文字识别(Optical Character Recognition,OCR)可以将图片中的文字信息转换为可编辑文本,是一款由阿里巴巴达摩院权威AI团队打造的全栈全场景OCR文本识别类产品。根据客户的业务场景和需求,将产品分为了通用文字识别、个人证照识别、票据凭证识别、教育场景识别、车辆物流识别、企业资质识别、小语种文字识别等,满足各种客户的图片识别需求。 由于阿里云视觉智能开放平台和云市场这两个渠道下也具备阿里文字识别服务,一些不熟悉的客户很容易将三者搞混淆,这边简单做下对比。然后再针对个人证照识别下常见的服务-身份证识别功能简单介绍下产品的开通及使用。
7803 0
阿里云文字识别(OCR)服务 Quick Start
|
8月前
|
监控 测试技术 数据库连接
利用 RunnerGo 深度探索 API 性能测试:从理论到实践
API性能测试是保障应用稳定性和用户体验的关键环节。本文详细探讨了如何使用RunnerGo全栈测试平台进行高效API性能测试,涵盖测试计划创建、场景设计、参数配置到执行与分析全过程。通过电商平台促销活动案例,展示了高并发下的测试策略与优化措施,如代码与数据库查询优化、数据库连接池扩容、服务器资源配置调整及缓存策略实施等。最终显著提升系统性能,满足高并发需求。API性能测试需持续关注与优化,以适应业务发展和用户需求变化。
280 33
|
9月前
|
JavaScript 开发者
HarmonyOS NEXT 实战系列01-ArkTS基础
ArkTS是HarmonyOS应用开发的首选语言,基于TypeScript扩展而成,保留了TS风格并强化静态检查与分析能力,提升程序稳定性和性能。它支持声明式UI开发、状态管理等功能,简化应用构建。语法涵盖变量、常量、数组、对象、语句(如if、switch)、函数(含箭头函数与泛型)、类和模块等特性,同时提供联合类型、字面量联合类型及枚举类型等丰富类型支持,助力开发者高效编写高质量代码。
|
Ubuntu Linux 数据安全/隐私保护
内核实验(七):使用内核KFIFO环形缓冲区机制
本文通过一个内核模块实验,演示了如何在Linux内核中使用KFIFO环形缓冲区机制,包括定义KFIFO、编写驱动程序以及在Qemu虚拟机中进行编译、部署和测试,展示了KFIFO在无需额外加锁的情况下如何安全地在读者和写者线程间进行数据传输。
804 0
内核实验(七):使用内核KFIFO环形缓冲区机制
|
设计模式 算法 编译器
【C++ 析构函数】C++ 私有析构函数的作用
【C++ 析构函数】C++ 私有析构函数的作用
328 1
|
Kubernetes Cloud Native API
云原生系列(十)
云原生系列(十)
|
Java Go
Golang深入浅出之-Go语言指针面试必知:理解与使用指针
【4月更文挑战第21天】Go语言中的指针允许直接操作内存,常用于高效数据共享和传递。本文介绍了指针的基础知识,如声明、初始化和解引用,以及作为函数参数使用。此外,讨论了`new()`与`make()`的区别和内存逃逸分析。在结构体上下文中,指针用于减少复制开销和直接修改对象。理解指针与内存管理、结构体的关系及常见易错点,对于面试和编写高性能Go代码至关重要。
494 2
|
Linux Docker 容器
Dockerfile 文件结构、docker镜像构建过程详细介绍
本文是博主学习docker 镜像制作的记录,希望对大家有所帮助
536 0
Dockerfile 文件结构、docker镜像构建过程详细介绍
|
NoSQL Redis Python
python flask 使用 redis 写一个例子给我
python flask 使用 redis 写一个例子给我
454 4
|
传感器 数据采集 人工智能
传感器架构及原理(一)
传感器架构及原理(一)
521 1