如何保证元素定位稳定性——通配符

编辑器
340
1
1
RPA老码教兽
一级
楼主
  • 收藏
  • 分享
2021-08-26 7:59:52

在实现对元素进行自动化操作的过程中,我们需要获取元素的属性,那么在执行操作之前,

如何选择合适的属性和方式定位到我们需要的元素呢?

哪些方法技巧能够让我们更稳定地实现元素定位?


这篇文章我们就来分析一下,保证元素定位稳定性的常用方式——通配符,能够如何帮助我们提高元素定位稳定性。

1. 哪些场景下,元素会频繁发生变化?

【场景举例】

场景一:应用窗口标题会频繁变化,例如应用主窗口标题包含版本信息,并且应用版本迭代频繁

场景二:应用窗口会随着操作有所变化,例如Visual Studio Code标题会包含当前打开的文件名

记事本标题会随着操作变化

场景三:Web元素某个属性有固定唯一标识前缀,后面会加一些随机数

网页标题会发生重名或变化


2. 什么是通配符?

通配符包括“*”和“?”,代表“匹配任意内容”。

通配符可以用于匹配频繁发生变化的元素,替换会变化的内容,即去除了不稳定的元素,因此能够用于保证元素定位的稳定性。


3. 桌面&Web自动化通配符的适用属性

桌面自动化以下属性支持通配符:AutomationId/ClassName/Name

Web自动化几乎所有的属性都支持通配符


4. 使用通配符的操作方式

场景三操作演示(Web元素某个属性有固定唯一标识前缀,后面会加一些随机数):

【步骤一】选择URL方式定位至文件服务网页

【步骤二】添加通配符“*”

结合URL方式,前面部分的URL加上通配符,这样处理后甚至可以在不需要Title的时候运行。同样支持定位,此种方式在某些场景下更加稳定。

【PS】确保打开的页面中,当前需要定位的页面URL的前缀是唯一的


5. 常见疑问

【问】标题前半部分可以使用通配符吗?

也可以的

Eg:在前半部分使用通配符

【问】如果元素的属性是随机生成的数字,且无法用通配符替代,应该如何操作?

选择器算法会自动选择较稳定的文档属性。如果遇到元素属性是随机生成的数字,需要主动选择属性,如果有些属性不稳定,就不去选择这些属性。


  • 总结

这篇文章,我们主要讲解了如何通过通配符保证元素定位稳定性。

在讲解之前,我们先理解了通配符概念,基于这个概念,我们理解了它的应用场景:替代频繁发生变化的内容。

我们通过列举元素频繁变化的可能情况,掌握了3种常见的适用场景:应用窗口标题频繁变化、应用窗口随着操作变化、Web元素某个属性有固定唯一标识前缀,后面会加一些随机数。

通过实操这些场景中如何适用通配符,我们学会了在实际场景中应用通配符。

最后,我们通过2个常见疑问,加深了对通配符应用的理解:标题前半部分也可以使用通配符、主动选择较稳定的元素属性。


观看原视频

https://www.bilibili.com/video/BV1k64y1x7YZ


再学一会儿

震惊!Google的代码开源了


与技术大牛交流 & 获取优质RPA实际案例 & 行业大咖+技术牛人讲解

扫码添加【云扩小助手】

最佳答案

HandsomeWang
一级
1
2021-08-26 9:41:42

这篇文章写的好赞

1答案

HandsomeWang
一级
1
2021-08-26 9:41:42

这篇文章写的好赞

我要回帖

登录后回帖