视觉验证点

要创建视觉验证点,请使用 squishidecreateVisualVP(objectNameOrReference, vpFile) 函数。您可以在 视觉验证点 对话框中查看比较失败并进行预期视觉状态的编辑。

普通编辑模式

在对对象层次结构的视觉状态进行Boolean测试之前,可以通过test.vp(name) 函数检查来配置预期的视觉状态。要打开编辑器,请选择验证点文件并点击编辑图标()或双击文件。

对话框围绕要检查的GUI结构的图像展开。在左侧,通过树形视图显示发现的子控件层次结构(结构)。通过在树项或图像上单击选择控件后,该控件的属性和激活的检查将会在右侧的 属性 窗格中显示。

"The Visual Verification Point Editor"

对象属性被分组为以下类别:标识内容几何形状截图。这也是在测试执行过程中找到匹配对象层次结构后随后遵循的顺序。

识别属性

有些对象属性对于视觉外观来说并不相关。但如果两个对象快照的结构不相似,它们可以帮助将一个树中的一个对象映射到另一个树上。

如果一个对象具有识别属性的稳定性不稳定(例如,HTML元素的id属性通常被分配为动态计算的值),则可以将这些属性从要考虑的对象特征列表中排除。

内容属性

内容属性会影响UI元素在屏幕上的呈现方式。无论是通过文本内容、数值还是按钮的当前状态。

内容属性是身份检查的一部分,因为它们通常提供区分元素的一种好方法。

如果属性的值可以调换,则可以配置使用通配符字符的模糊检查。

几何属性

一个元素的几何形状由其x和y位置(相对于登录元素进行顶部元素)以及其宽度和高度指定。

如果在测试执行平台之间几何形状可以变化,可以指定可接受的容忍度。

截图

可以为整个窗口、单个控件或控件组执行截图检查。

默认情况下,整个表面都会进行检查(逐像素),但在内容不稳定的情况下,检查可以禁用。

查看视觉差异

失败的Boolean test.vp(name) 测试将在 测试结果视图 中显示,简要说明失败的检查。

"Test Results with Visual Verification Point failure"

单击 查看差异 工具栏按钮将在分析差异详细信息的情况下以扩展模式打开编辑器。

"Editor showing failed Visual Verification"

在扩展模式下,编辑器将同时显示预期和实际图像,列出了标记为红色的 失败 和差异。

属性 包含一个额外的 层次结构 部分。此部分将显示两个对象结构之间可能的不一致。

单击 结构 按钮将在显示面板上显示整个对象结构,包括相同和不同的对象。

"Visual Verification Structure View"

绿色勾选标记表示所有活跃检查均获得积极结果,如果至少有一项检查失败,则显示红色圆圈。黄色图标表示对象经过成功的检查,但在其子对象或子对象的子对象中发现了失败。

调整视觉验证

理想情况下,启用所有检查项的验证点执行会产生积极结果。由于众多因素,验证可能会失败。至少在第一次运行时。许多类型的失败可以通过按“放松检查”按钮自动处理。另一方面,“接受所有”按钮将简单地用现在看到的实际状态覆盖预期状态。

以下是一些在验证点持续失败时推荐的更具体的“调整”方法。

处理截图检查失败

对于已知包含动态内容的数据关闭截图检查。如果仅考虑内容和几何检查就足以验证 UI 布局。

处理内容检查失败

如果属性值不稳定,考虑使用通配符。如果不可避免,通过取消选中“包含在验证中”完全删除检查。

"Content check with wildcards"

处理几何检查失败

在几何形状不同的情况下,可以通过使用 x、y、宽度和大小的允许范围来放宽检查。或者通过取消选中“包含在验证中”完全删除检查。

"Range Check"

创建状态与执行状态

在执行测试时,应用程序的状态可能会与交互式创建验证点时看到的状态略有不同。因此,布局检查可能立即失败。首先,检查更改是否可能接受。然后使用“接受所有”按钮接受更改。这可以使检查在后续运行中使用。

暂时状态引起的失败

在应用程序状态转换期间执行的验证点可能对精确时间非常敏感。UI 的一部分可能仍在设置阶段。在 test.vp() 之前插入 snooze() 语句可以使检查进入 UI 的稳定状态。

©2024 The Qt Company Ltd. 本文件中包含的文档贡献的版权属于其各自的拥有者。
提供的文档根据家用自由文档许可证第 1.3 版的条款进行许可,如自由软件基金会发布。
Qt 和相应的徽标是芬兰和/或世界各地 The Qt Company Ltd. 的商标。所有其他商标均为其各自所有者的财产。