在 Citrix 会话的运行期间,该测试使用窗口事件或图像识别来确保通过来自 Citrix 服务器的应用程序事件保持用户输入操作一直是正确的。
同步机制使测试能够保持同步,而不会仅依赖于计时,计时可能会根据 Citrix 服务器上负载的不同而不同。
同步不同于验证点的功能。验证点检查应用程序的指定值(例如窗口同步),并生成测试状态:通过、失败、错误或未定。同步用于测试执行,并在测试未能识别服务器输出的情况下,在测试日志中生成同步超时。
同步在发生窗口事件时执行,或通过识别您指定的屏幕区域而执行。
- 窗口事件同步由 Citrix 服务器自动生成。当测试运行时,虚拟用户会将仿真用户操作发送到服务器(例如键盘或鼠标操作),而服务器会以窗口事件(例如创建、激活或销毁)进行响应。测试会等待期望的窗口事件发生,然后再将接下来的用户操作发送到服务器。测试使用窗口样式以及(可选)位置、大小和窗口标题来识别窗口。
- 通过图像同步,您可以要求对屏幕区域内容进行其他识别。测试可以根据从图像计算得到的唯一位图散列码进行同步,也可以根据通过光学字符识别从图像检索到的文本字符串进行同步。在某些应用程序(例如 Web 浏览器或字处理器)中,实际窗口内容比窗口对象更改得更频繁。在这些情况下,必须在记录期间手动将图像同步添加到测试的关键部分,以便测试可与窗口内容同步。
在测试执行期间,测试将等待窗口事件或图像识别来同步用户操作,且与服务器上的负载无关。如果期望的窗口事件未能发生,或者无法识别期望的图像,那么测试将生成同步超时并在测试日志中报告该超时。测试将尝试在下一个同步点继续执行。
基本超时延迟在 Citrix 测试生成首选项中指定;但是,实际延迟会随着同步级别的不同而不同。
可在测试编辑器中为每个元素指定三个级别的窗口事件和图像同步:
- 条件:这是主窗口和对话框的缺省行为。如果同步失败,那么测试将尝试继续执行,并且同步超时会记录在 Citrix 性能报告和测试日志中。
- 强制:如果在基本超时延迟三倍的时间段(缺省情况下)后同步失败,测试将以错误状态退出,并且与 Citrix 服务器的连接将关闭。测试执行将继续运行,直到测试结果最终完成。
- 可选:同步不是必需的,但记录在测试日志中。在基本超时延迟十分之一的时间段后会发生超时。
在测试编辑器中可覆盖每个同步元素的缺省超时值。测试记录器将根据窗口事件的本质为它们自动设置建议的同步级别:
- 主窗口创建事件设置为强制。
- 其他窗口创建事件设置为条件。
- 主窗口销毁事件设置为条件。
- 其他窗口销毁事件设置为可选。
- 图像同步设置为条件。