使用图像识别或文本测试对象

相关项: GUI 测试和组件

将图像识别或文本测试对象直接从应用程序添加到对象存储库,甚至可以从屏幕上显示的对象图片中添加这些对象。

添加图像识别或文本对象

此部分描述如何将图像识别或文本测试对象添加到对象存储库。

添加图像识别或文本对象

  1. 在“对象存储库管理器”或“对象存储库”窗口中,单击“将图像识别对象添加到本地” 或“将文本对象添加到本地” 工具栏按钮。

  2. 在“选择识别模式”对话框中,选择要用于识别对象的模式,然后选择控件或文本。

    备注: 要显示“选择识别模式”对话框,请在“选项”对话框中启用此选项 (“工具”>“选项”>“ GUI 测试”选项卡 >“图像识别和文本对象”节点)。

  3. 在“添加图像识别测试对象”或“添加文本测试对象”对话框中,可以执行下列操作:

    • 调整对象存储库中随测试对象一起保存的图像的边界。

    • 新建快照以完全替代此图像。

    对于图像识别对象:

    • 指定要从测试对象图像中排除的区域。在屏幕上搜索图像以标识对象时,UFT One 将忽略这些区域。

    • 修改测试对象的 ClickPoint。这是在控件上运行测试对象方法时在控件中单击的位置。

  4. 单击“保存”以添加图像识别或文本测试对象。

    新的测试对象及选定的图像添加到对象存储库中,位于表示包含控件或文本的应用程序或窗口的测试对象之下。

在对象存储库中:

  • 图像识别对象名为 InsightObject,保存的图像用于标识应用程序中的控件。
  • 对于文本对象,UFT One 使用 OCR 从图像中提取文本并将其保存在对象的 text 属性中。测试对象名称基于提取的文本,并且该文本用于标识应用程序中的相关文本。

    UFT One 2022 及更高版本: 使用 ABBYY OCR 时,UFT One 使用额外的颜色相关属性进行文本标识,包括 textcolorbackgroundcolorhuethresholdisinverted。这些属性只有在使用 Abbyy OCR 时才会生效。

返回页首

定义新的文本测试对象

您可以通过描述在对象存储库中创建文本测试对象,指定用于在应用程序中标识对象的文本。

  1. 定义新测试对象中所述,使用工具栏中的“定义新测试对象”按钮

  2. 在“环境变量”下拉列表中,选择 IBA。然后选择“TextObject 类”,并指定用于对象标识的属性。

    UFT One 2022 及更高版本: 如果您使用 ABBYY OCR,您可以通过单击“添加描述属性”按钮来指定与颜色相关的属性。

返回页首

修改图像识别或文本测试对象的图像

  1. 在“对象存储库”或“对象存储库管理器”窗口中,选择要修改其图像的测试对象。

    如果您在编辑器中,则双击步骤中的测试对象的图像。

  2. 测试对象图像区域中,单击更改测试对象图像按钮

    如果您修改文本对象的图像,则测试对象的 text 属性会相应更新。

    UFT One 2022 及更高版本: 使用 ABBYY OCR (在使用 ABBYY OCR 添加的对象上) 时,测试对象的颜色相关属性也会更新。

返回页首

从图像识别对象中检索文本

使用 Insight.GetVisibleText 方法可检索图像识别对象中显示的文本。UFT One 使用 OCR 机制识别并返回文本。

使用此文本进行验证,也可用于区分对象或应用程序的状态。

    Example:
  • 如果应用程序中按钮上的文本在操作成功时发生更改,则检查该文本以验证是否成功。

    确保使用“排除区域”忽略洞察对象定义中的文本区域。

  • 如果应用程序中有两个类似的对象(其不同之处仅在于文本),则使用“排除区域”忽略图像中的文本,将二者识别为相同的对象。

    然后,使用 GetVisibleText 检查对象上的文本,并在测试或组件中区分这两个对象。

有关更多详细信息,请参阅《UFT One Object Model Reference for GUI Testing》Insight 部分。

返回页首

更新图像识别测试对象详细信息

执行以下任何操作,以提高测试或组件的可读性和效率:

  • 将测试对象重命名为描述其表示的控件的名称。(建议)

  • 将测试对象移动到测试对象层次结构内:

    如果将其置于其他测试对象下...

    UFT One 仅在其父测试对象内的应用程序中搜索此对象。

    如果将图像识别测试对象移动到顶级对象... UFT One 在屏幕上的任何位置搜索此对象。
  • 更新其他描述属性,例如测试对象描述的 similarityskipmakeobjvisiblemethodoptionorderratiotestthreshold

    有关详细信息,请参阅《UFT One Object Model Reference for GUI Testing》中的 InsightObject description properties 主题。

  • 修改为测试对象创建的序号标识符。有关详细信息,请参阅序号标识符

  • 定义测试对象的可视关系标识符。有关详细信息,请参阅可视关系标识符

有关更多详细信息,请参阅维护对象存储库中的测试对象

提示: 完成对所有图像识别测试对象的修改后,请删除所有快照以减少磁盘空间使用量。这并不会删除用于对象标识的测试对象图像。

选择“工具”>“删除图像识别快照”

返回页首

另请参见: