基于图像的自动化

在某些情况下,自动化所需的文本信息无法获取,只能得到元素的图像。 Ranorex提供基于图像的自动化来绕过这个障碍。

有时候,你需要根据图像信息自动点击操作。 出于这个原因,RanorexRecorder提供了一个可选的方式来录制有关于鼠标操作的图像。 要激活图像模式,只需在录制期间,在Recorder的工具栏选中’Image based’的复选框。

 

01-activate-image-based-recording-16

图:激活图像录制模式

现在将鼠标指针移动到一个GUI元素上方。 Ranorex将高亮显示这个可访问的UI元素,也突出了包含该GUI元素的可识别图像区域。 要关闭基于图像的录制,取消选中该复选框,或按下快捷键“I”。

注:首先要使用主快捷键“Scroll”来激活,然后才能激活其他快捷键。在本章“ Recorder快捷键 阅读更多关于快捷键的使用说明。

示例介绍

在KeePass小软件中,用户可以选用其他图标来表示账号密码信息(例如,有人可能会使用WordPress的标志来表示他的WordPress账户信息)。 为了实现自动点击一个自定义的图标,必须要使用图像自动化来实现,因为索引指数较低的图标可能被删除从而导致图标的顺序发生改变。

 

02-custom-kee-pass-icons-04

图:KeePass的图标选择器对话框,其中包含了两个自定义图标

要想把点击自定义图标的操作实现图像自动化,首先激活图像录制模式。 将鼠标指针移动到KeePass软件中自定义图标的ListView上,直到整个ListView控件被高亮突出显示。 在ListView上点击一下鼠标(注意不要点到自定义图标)。 点击要在ListView控件上而不能是(图标)元素本身,因为要通过点击来定义在哪个区域搜索图像。 这样点击就表示在整个List控件中搜索图像。

停止录制后,Action表中就会有一个基于图像的鼠标点击Action。 在录制鼠标点击时,会对该控件截图,并把截图作为对应对象库条目的子元素。

 

03-image-editor-2c

图:Ranorex的图像编辑器

为了实现自动点击自定义图标,你一定要告诉Ranorex要在ListView中对哪张图像(或图像的一部分)实现点击操作。通过点击’Location’列中的按钮(见上图), 打开图片编辑器。 在这个对话框中,使用工具栏上的’Select image find region’按钮来定义哪个自定义图标应该被点击。 此外,使用’Select click location’的功能告诉Ranorex,应在哪个位置坐标执行鼠标点击。 此功能将在后面“ 图像编辑器“部分详细描述。

 

04-find-region-and-click-location-57

图: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 可以在图像搜索前执行定义的预处理步骤。

  • None:无预处理
  • Preprocessing将图像转换为灰度图像。
  • Edges在图像中使用拉普拉斯边缘检测算法检测物体边缘(包括灰度)。
  • EdgesSobel:在图像中使用Sobel边缘检测算法(包括边缘)检测对象的边缘。
  • Downsize:缩小图像尺寸。
  • Threshold使用指定阈值将图像转换为黑/白图像(包括灰度)。
Screenshot Name 为在搜索中使用的截图指定名称。
Selection Rectangle 定义图像选择区域(搜索的区域)。
Similarity 指定最小相似度(0.0-1.0),搜索出来的图像与原先图像达到多少相似度,才能被认为是匹配的。

 

要针对图像录制设置默认值,打开“设置”对话框,激活’Imaging’标签。

 

05-imaging-settings-dialog-f9

图:图像录制的设置对话框

图像编辑器

使用右键菜单项’Edit Location…’来打开图像编辑器,改变点击的位置。

编辑器提供了关于截图更详细的视图。 此外,它提供了一些有用的功能来改变图像的搜索区域。

 

06-image-editor-b3

图:单击位置对话框来改变基于图像的鼠标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(或负值)时,是指相对于该区域以外的地方。

 

07-choose-location-aa

图:设置相对或绝对鼠标Action位置

如果截图要进行更新,单击工具栏上的’Capture New Screenshot’按钮。 每个新创建的截图也会自动添加到对象库条目的图像列表中,因此它可用于其他基于图像的验证或自动化action。

 

08-add-new-screenshot-6e

图:为要搜索的位置/图形添加一个新的图片,或选择一个现有的图像

 

 

Leave a comment

请输入正确的验证码