在某些情况下,自动化所需的文本信息无法获取,只能得到元素的图像。 Ranorex提供基于图像的自动化来绕过这个障碍。
有时候,你需要根据图像信息自动点击操作。 出于这个原因,RanorexRecorder提供了一个可选的方式来录制有关于鼠标操作的图像。 要激活图像模式,只需在录制期间,在Recorder的工具栏选中’Image based’的复选框。
图:激活“图像录制模式
现在将鼠标指针移动到一个GUI元素上方。 Ranorex将高亮显示这个可访问的UI元素,也突出了包含该GUI元素的可识别图像区域。 要关闭基于图像的录制,取消选中该复选框,或按下快捷键“I”。
注:首先要使用主快捷键“Scroll”来激活,然后才能激活其他快捷键。在本章“ Recorder快捷键 阅读更多关于快捷键的使用说明。
在KeePass小软件中,用户可以选用其他图标来表示账号密码信息(例如,有人可能会使用WordPress的标志来表示他的WordPress账户信息)。 为了实现自动点击一个自定义的图标,必须要使用图像自动化来实现,因为索引指数较低的图标可能被删除从而导致图标的顺序发生改变。
图:KeePass的图标选择器对话框,其中包含了两个自定义图标
要想把点击自定义图标的操作实现图像自动化,首先激活图像录制模式。 将鼠标指针移动到KeePass软件中自定义图标的ListView上,直到整个ListView控件被高亮突出显示。 在ListView上点击一下鼠标(注意不要点到自定义图标)。 点击要在ListView控件上而不能是(图标)元素本身,因为要通过点击来定义在哪个区域搜索图像。 这样点击就表示在整个List控件中搜索图像。
停止录制后,Action表中就会有一个基于图像的鼠标点击Action。 在录制鼠标点击时,会对该控件截图,并把截图作为对应对象库条目的子元素。
图:Ranorex的图像编辑器
为了实现自动点击自定义图标,你一定要告诉Ranorex要在ListView中对哪张图像(或图像的一部分)实现点击操作。通过点击’Location’列中的按钮(见上图), 打开图片编辑器。 在这个对话框中,使用工具栏上的’Select image find region’按钮来定义哪个自定义图标应该被点击。 此外,使用’Select click location’的功能告诉Ranorex,应在哪个位置坐标执行鼠标点击。 此功能将在后面“ 图像编辑器“部分详细描述。
图:Ranorex图像编辑器中的‘Select image find region’和‘Select click location’
在这个例子中,通过Ranorex实现了,在整个ListView控件所有可用的自定义图标中鼠标点击WordPress标志。 如果找到了该标志,那么无论这个标志在什么位置都会实现点击。 同样,Ranorex没有使用索引指数或特定位置的List item,而是使用一个区域内(ListView控件的截图区域)一个具体的图形。 为了验证,删除索引为0的 KeePass图标,并再次运行录制模块。 即使相比录制时,WordPress图标的索引值和位置发生了改变,但仍然会被点击。
要改变图像自动化action的设置,在属性窗口中打开属性组’Image-Based Location’。
基于图像的位置设置 | |
Advanced Options | 在属性组设置像“’Clipping’ 或 ‘Best Match’ 这样的高级选项,
如果’Best Match’设置为true,那么相似度最高的位置会被作为结果用于验证。 如果设置为false,第一个可用的结果位置将被用于验证。 第一种方式更准确的,第二种方式更快。 |
Preprocessing | 可以在图像搜索前执行定义的预处理步骤。
|
Screenshot Name | 为在搜索中使用的截图指定名称。 |
Selection Rectangle | 定义图像选择区域(搜索的区域)。 |
Similarity | 指定最小相似度(0.0-1.0),搜索出来的图像与原先图像达到多少相似度,才能被认为是匹配的。 |
要针对图像录制设置默认值,打开“设置”对话框,激活’Imaging’标签。
图:图像录制的设置对话框
使用右键菜单项’Edit Location…’来打开图像编辑器,改变点击的位置。
编辑器提供了关于截图更详细的视图。 此外,它提供了一些有用的功能来改变图像的搜索区域。
图:单击“位置”对话框来改变基于图像的鼠标action的设置
图像编辑功能 | ||
基于图像 | 指定点击操作是否基于图像信息 | |
Select Image Find Region | 指定图像内进行搜索的区域 | |
Select Click Location | 定义搜索区域的点击位置 | |
Autoselect Image Find Region | 帮助在图像内指定搜索区域 | |
缩小 | 缩小 | |
放大100% | 切换到1:1视图 | |
放大 | 放大 | |
Capture New Screenshot | 为对象库条目重新截图 |
在下拉组合框中,指定鼠标Action在执行当前定义的“图片查找区域”时,是使用相对还是绝对位置。
绝对位置是指离“图片查找区域”左上角的距离(以像素为单位)。
相对位置提供了一些预定义的位置设置(如Center,CenterLeft …)。 它也可以使用比例值来定义相对位置。 ‘图像查找区域’在两个方向(X和Y轴)上的相对位置由0和1之间的值定义。 相对点击位置 “0.9 0.9”定义了指定区域右下角附近的位置。 值大于1(或负值)时,是指相对于该区域以外的地方。
图:设置相对或绝对鼠标Action位置
如果截图要进行更新,单击工具栏上的’Capture New Screenshot’按钮。 每个新创建的截图也会自动添加到对象库条目的图像列表中,因此它可用于其他基于图像的验证或自动化action。
图:为要搜索的位置/图形添加一个新的图片,或选择一个现有的图像