已知问题 - Web 插件

此部分包括有关使用 Web 插件的常规疑难解答和限制信息。

注释: 出于向后兼容性考虑,某些文件夹路径有意包含以前的公司品牌。

常规

  • 不同页面和框架上的 UFT One Web 代理会使用 window.postMessage 与彼此通信。如果您要测试的应用程序将侦听 MessageEvent,并处理来自 UFT One Web 代理的消息,则可能会发生不可预测的行为。

    通常建议将 Web 应用程序设计为忽略来自源而非其自身的消息。有关详细信息,请参阅 https://developer.mozilla.org/en-US/docs/Web/API/Window/postMessage#Security_concerns

  • Web 测试对象 (例如 WebButton) 的数字属性不支持正则表达式。

返回页首

对象标识

放大或缩小网页

UFT One 15.0.1 及更低版本,或者使用 Internet Explorer、Safari 或 JavaFX 控件时:  

放大或缩小网页可能会导致 UFT One 在突出显示或识别对象时出现意外行为。确保浏览器处于默认缩放级别。

另请参阅 DPI 缩放级别

同时使用 Web 和 Siebel 插件

如果使用已加载的 Siebel 插件打开 UFT One,则 Web 插件不会显示在“对象标识”对话框中。

变通方法: 

变通方法: 将 HKEY_CURRENT_USER\Software\Mercury Interactive\QuickTest Professional\MicTest\Packages\SiebelPackage\Settings\AllowWebToConfig 注册表项的值更改为 1

返回空值

如果应用程序对象未在应用程序的控件中实现 aria-selected 属性,则某些描述属性将返回空值。

受影响的属性包括: selecteditems countselected itemsselectionvalue 将返回空值。

动态生成的子 WebTree 对象

如果 WebTree 对象中的子项是动态生成的,UFT One 可能无法使用 .Select 方法自动选择树中的项。

特别是在展开父节点之前,当子对象在应用程序中不可见或不存在时,可能会发生这种情况。

变通方法: 手动添加步骤以使节点可见,或展开树节点以在应用程序中创建对象。

引导库

UFT One 无法识别引导库中使用 <a> 元素 (具有 btndisabled 类) 的对象。

这些类会禁用 UFT One 识别对象所需的指针事件。

返回页首

录制

在录制会话期间自动完成

在录制会话期间,不支持自动完成。在自动完成控件上进行录制时,输入完整的字符串,而不要选择控件提供的建议。此步骤将按与其他 (非自动完成) 控件相同的方式进行录制。

变通方法: 您可以通过选择工具 > Internet 选项 > 高级,然后取消选中“浏览”选项下的使用直接插入自动完成功能,在 Microsoft Internet Explorer 中禁用“自动完成”功能。

录制包含子对象的 WebTree 对象

如果 WebTree 对象包含树内的单独对象 (例如复选框对象),则不会录制这些子对象。

变通方法: 执行以下某项操作:

侦测子对象

执行以下操作:

  1. 侦测子对象以获取树项的相对 Xpath 值。
  2. 然后,添加 WebTree.Select 方法,其 XPath 值是为 .Select 方法的 XPath 参数从侦测器中检索到的值。
手动添加对象

将对象添加到对象存储库中,然后将其手动添加到测试或组件中。

返回页首

检查点

在某个浏览器上运行时,在另一个浏览器上创建的位图和页面检查点可能会失败,因为不同的浏览器在视觉上呈现的 Web 对象有所不同。

对于页面检查点,此情况与处理 HTML 源文件中的大小写时的差异有关。

返回页首

WebTable 测试对象的识别

嵌入到 Web 表中的对象

如果您正在嵌入到 Web 表中的对象上录制操作,则可能无法正确录制这些操作。请在录制后根据需要重新调整测试。

与在 QuickTest 9.5 或 10.00 中创建的测试集成

默认情况下,使用 UFT One Web 插件时,UFT One 会将任何 HTML 表都识别为 WebTable 测试对象。

但是,在 QuickTest 9.5 或 10.00 中,默认行为是在对象侦测器、识别和录制会话期间,忽略仅有一行一列的 HTML 表。

在特定情况下,在识别新测试对象或运行包含在 QuickTest 9.5 或 10.00 中识别的 Web 测试对象的步骤时,这一更改的默认行为可能会导致差异。例如,ChildObjects 方法可能为包含 Web 表的父对象返回不同的值。

变通方法:

返回页首

WebAgGrid 测试对象

相关插件

从.UFT One 15.0 开始,AgGrid Web 子插件 (默认不加载) 将支持 WebAgGrid 对象。如果要测试 AgGrid 对象,请确保在打开 UFT One 时除 Web 插件之外,还选择了 AgGrid 插件。

要打开或运行在更低的 UFT One 版本中创建的测试并使用 AgGrid 对象,请将 AgGrid 插件与“测试设置”的“属性”窗格中的测试相关联。

检查点
  • WebAgGrid 测试对象上的检查点将仅验证 DOM 中可用的表内容。

  • 由于运行测试时 Chrome 中显示“UFT 正在调试”横幅,因此检查点可能会失败。关闭此横幅,然后重新运行测试。

    要关闭此横幅,请执行以下操作之一:

    • 在运行测试时手动关闭该横幅。
    • 在 Chrome 设置中启用静默调试。
行/列
  • 对折叠行或列执行的操作可能会出现意外行为。为避免错误,请确保在运行测试之前展开行或列。
  • 对包含较大数字的行或列执行的操作可能会出现意外行为。

WebAgGrid.GetCellData

 

如果 WebAgGrid 对象按列排序,则 GetCellData 方法无法标识列。

: GetCellData 步骤仅无法标识已排序的列。所有其他列均可被成功标识。

变通方法: 删除对列进行的排序,然后再次运行测试。

指定用于对象的逻辑名称的属性

WebAgGrid 和 WebUIGrid 测试对象不支持逻辑名称定义。

有关更多详细信息,请参阅《UFT Object Model Reference》中的 WebAgGrid 对象。

返回页首

WebUIGrid 测试对象

  • 从.UFT One 15.0 开始,UIGrid Web 子插件 (默认不加载) 将支持 WebUIGrid 对象。如果要测试 UIGrid 对象,请确保在打开 UFT One 时除 Web 插件之外,还选择了 UIGrid 插件。

    要打开或运行在更低的 UFT One 版本中创建的测试并使用 UIGrid 对象,请将 UIGrid 插件与“测试设置”的“属性”窗格中的测试相关联。

  • WebUIGrid 测试对象上的检查点将仅验证 DOM 中可用的表内容。

  • WebAgGrid 和 WebUIGrid 测试对象不支持逻辑名称定义。

 

返回页首

另请参见: