studio
2024.10
true
- 发行说明
- 入门指南
- 设置和配置
- 自动化项目
- 依赖项
- 工作流类型
- 控制流程
- 文件比较
- 自动化最佳实践
- 源代码控件集成
- 调试
- 日志记录
- 诊断工具
- 工作流分析器
- 变量
- 参数
- 导入的命名空间
- 编码自动化
- 基于触发器的 Attended 自动化
- 录制
- 用户界面元素
- 选取器
- 对象存储库
- 数据抓取
- 图像与文本自动化
- Citrix Technologies Automation
- RDP 自动化
- VMware Horizon 自动化
- Salesforce 自动化
- SAP 自动化
- macOS 用户界面自动化
- ScreenScrapeJavaSupport 工具
- Webdriver 协议
- 扩展程序
- 测试套件 - Studio
- 故障排除
Studio 用户指南
Last updated 2024年11月18日
模糊搜索
选取器包含用于引用目标窗口或浏览器标签页的顶层标签。此标签中存有标题、流程名称、URL、窗口名称等属性,可帮助您正确识别要用于自动化项目的元素。
由于目标应用程序会根据您的操作重写顶层标签值,因此这些值经常会受动态变更的影响。例如,网页标题可能会在自动化流程中发生变更,从而导致相应的选取器无效。
对此,您可使用选取器的模糊搜索功能,根据输入的模式而非精确匹配项来查找字符串。如此一来,即使某些值在自动化流程中容易改变,您也可使用更灵活的方法识别元素,并根据多个属性验证选取器。
为了使用模糊搜索功能,您需在目标选取器的顶层标签中加入两个匹配选项,如下所示:
选项 | 描述 |
---|---|
| 用于指定目标搜索标签,具体取决于 <tag_name> 值。
|
| 确定目标 <tag_name> 的匹配阈值。此选项支持 0 到 1 之间的数值,如下所示:
|
注意:如果找到更多元素,则对第一个元素执行目标操作。
以下选取器类型目前均支持模糊搜索:
选取器类型 | 支持 |
---|---|
<wnd> | |
<html> | |
<webctrl> | |
<java> | |
<ctrl> | |
<uia> | |
<sap> | |
<rdp> | |
<silverlight> | |
标识流程名称的标签。 示例:<html app="firefox.exe"> 。
|
备注:
在模糊选取器中添加
check:text="example"
,检查目标元素是否包含指定的文本。
例如,将
check:text="Options"
添加到模糊选取器,检查目标元素是否包含 Options
文本。
模糊搜索几乎可用于识别选取器顶层标签中的任意类属性。在下例中,我们的目标是针对错误拼写的属性构建有效的选取器:
A. 使用高模糊度
假设我们要构建一个选取器来识别
W3Schools Online Web Tutorials
<title>
属性。为达到本示例目的,我们错误拼写了此属性,以使选取器无效。
<html app='firefox.exe' title='WEScho0ls Online Web Tutorials' />
<html app='firefox.exe' title='WEScho0ls Online Web Tutorials' />
要解决此问题,我们需在
<html>
标签中引入模糊搜索功能。所涉及的属性为 <title>
,因此模糊搜索表达式的 <tag_name>
需采用 matching:title=fuzzy
形式。<title>
属性中的错误较小,因此可以使用更趋近 1 的模糊度。系统随后会生成以下选取器,由此返回正确的 <title>
属性,在本例中即为 W3Schools Online Web Tutorials
:
<html app='firefox.exe' title='WEScho0ls Online Web Tutorials'
matching:title='fuzzy' fuzzylevel:title='0.8' />
<html app='firefox.exe' title='WEScho0ls Online Web Tutorials'
matching:title='fuzzy' fuzzylevel:title='0.8' />
B. 使用低模糊度
在第二个示例中,我们需要为
<aaname>
属性构建选取器。目标属性为 Colorpicker
,但在本示例中,此属性错误拼写为 Clorker
。毫无疑问,由于此属性拼写错误,我们的选取器无效,并且大致类似于这样:
<html title='W3Schools Online Web Tutorials' />
<webctrl aaname='Clorker' parentid='main' tag='IMG' />
<html title='W3Schools Online Web Tutorials' />
<webctrl aaname='Clorker' parentid='main' tag='IMG' />
我们需要在
<webctrl>
标签中加入模糊搜索。在本例中,目标为 <aaname>
。由于目标拼写错误较多,因此我们将模糊度降低到 0 附近,以提高精确检测的几率。系统随后会生成以下选取器,由此返回正确的 <aaname>
属性,在本例中即为 Colorpicker
:
<html title='W3Schools Online Web Tutorials' />
<webctrl aaname='Colorker' parentid='main' tag='IMG' matching:aaname='fuzzy' fuzzylevel:aaname='0.4' />
<html title='W3Schools Online Web Tutorials' />
<webctrl aaname='Colorker' parentid='main' tag='IMG' matching:aaname='fuzzy' fuzzylevel:aaname='0.4' />