本主题介绍如何在 SOAtest 和 Virtualize 中自定义 web 场景的等待条件。

章节目录:

了解等待条件

您可以自定义 SOAtest 和/或 Virtualize 在执行用户操作之后等待多长时间,以便进入当前场景步骤的验证/提取阶段,然后进入场景中的下一个步骤。

当用户与 web 页面交互时,web 页面将响应用户正在做的任何事情。例如,当用户点击链接时,页面将重新加载新内容。当用户选择菜单项时,页面的其他部分可能会刷新自己。用户本能地等待页面完成更新,然后继续使用页面。实际上,在大多数情况下,用户必须等待更新,以便获得页面元素。

在实现测试自动化时,必须配置此决策。测试工具必须等待足够长的时间,这样它就不会在页面准备好之前继续执行场景执行过程,但同时它还必须快速运行,以实现自动化速度的好处之一。

SOAtest 和 Virtualize 在记录时自动配置等待条件。对于每个 web 场景步骤,它们都会自动添加一个延迟,以等待下一个场景步骤中使用的元素。之所以这样做,是因为您不能让下一个 web 场景步骤点击链接,除非该链接首先出现在页面上。

如果一个操作导致在记录期间加载一个新页面,那么 SOAtest 和/或 Virtualize 将添加“等待页面加载”延迟。

如果在录制过程中检测到不会导致页面加载的网络通讯报文(如 AJAX 请求),则会添加“等待没有 HTTP 通讯报文的时间间隔”等待条件,以便在回放过程中为 web 应用程序提供足够的时间来发出合适的请求。

但是,您可能希望手动调整或修改等待条件,以便让场景按预期执行。在许多情况下,单个场景步骤将使用多个等待条件。

指定等待条件

在场景记录期间捕获的等待条件可以在场景步骤中等待条件选项卡中查看和修改。可用的等待条件包括:

除了手动从该选项卡添加新的等待条件外,还可以从浏览器内容查看器工具自动添加这些条件。

从浏览器内容查看器中添加等待条件

浏览器内容查看器允许您从呈现的 Web 页面的视图以图形方式指定等待条件。

若要从浏览器内容查看器中添加等待条件工具:

  1. 右键点击要为其指定等待条件的元素,然后选择添加等待元素
  2. 在添加等待条件对话框,指定新等待条件的详细信息,然后点击 OK

添加的等待条件将自动配置为等待,直到出现已关闭的元素。

标识与等待条件关联的元素

作为等待条件源的元素将在浏览器内容查看器中以纯绿色边框突出显示。

配置等待条件的顺序

等待条件按执行顺序出现在等待执行选项卡中。您可以通过点击等待条件选项卡中合适的按钮对条件顺序进行添加、删除和修改。

等待条件的顺序非常重要!

无论其他任何等待条件成功或失败,等待条件都将按照它们出现的顺序执行。如果等待条件在超时前未满足,则会生成错误信息。 

除了等待指定的时间条件外,每个等待条件都有超时。如果在超时内没有满足等待条件,则会报告一条错误消息,以便您知道如何调整等待条件。然而,即使等待条件失败,场景步骤也将继续。可以将超时设置为使用首选项中设置的默认超时,也可以为单个等待条件定制超时。