测试同步

相关项: GUI 测试和脚本化 GUI 组件

本主题说明如何同步测试,确保仅在应用程序准备就绪时才执行这些步骤。

何时考虑同步

运行测试时,应用程序可能不能始终以相同速度响应。例如,以下过程可能需要几秒钟时间:

  • 进度栏达到 100%

  • 显示状态消息

  • 按钮变成启用状态

  • 打开窗口或弹出消息

通过同步测试来处理这些预计的时间问题,以确保 UFT One 在执行特定步骤之前等待直至应用程序准备就绪。

以下部分介绍 UFT One 中可用于测试同步的不同选项。

返回页首

添加同步点

如果不希望 UFT One 在应用程序中的对象达到特定状态之前执行步骤或检查点,请插入同步点以指示 UFT One 暂停测试。

例如,假设您在 Advantage Online Shopping 网站上录制测试。您想将反馈发送给卖方。您输入自己的电子邮件地址,然后在“主题”编辑框中输入您的建议或反馈。当您填写“电子邮件”编辑框和“主题”编辑框时,“发送”按钮将变得可用。但是,您稍后可能想要修改电子邮件地址或反馈。

如果没有同步点,UFT One 甚至可能会在“发送”按钮再次显示在测试运行中之前尝试单击该按钮,并且测试将失败。

UFT One 必须能够识别指定对象,才能执行同步点。要指示 UFT One 等待对象显示,请使用 ExistWait 语句。

Example: 为“发送”按钮插入同步点之后,屏幕可能如下所示:

在编辑器中显示为:

Browser("Advantage Shopping").Page("Advantage Shopping").WebEdit("emailContactUs").Set "123@google.com"
Browser("Advantage Shopping").Page("Advantage Shopping").WebEdit("subjectTextareaContactUs").Set "the laptop is good"
Browser("Advantage Shopping").Page("Advantage Shopping").Sync
Browser("Advantage Shopping").Page("Advantage Shopping").WebButton("send_btnundefined").WaitProperty "visible", true, 10000

返回页首

Exist 和 Wait 语句

使用 Exist 和/或 Wait 语句指示 UFT One 等待窗口打开或等待对象显示。您可以在循环中合并这些语句,指示 UFT One 在继续测试之前等待直到对象出现。

例如,以下语句指示 UFT One 在打开“航班表”对话框前最多等待 20 秒钟。

blnDone=Window("Flight Reservation").Dialog("Flights Table").Exist

counter=1

While Not blnDone

Wait (2)

blnDone=Window("Flight Reservation").Dialog("Flights Table").Exist

counter=counter+1

If counter=10 then

blnDone=True

End if

Wend

有关详细信息,请参阅添加同步点对话框

返回页首

超时设置

通常,如果发现 UFT One 等待对象显示或等待浏览器导航到指定页面的时间不够长,则可以增加测试的默认对象同步超时值和测试的浏览器导航超时值。

  • 使用测试时,要修改 UFT One 等待对象显示的最大时间量,请在文件 > 设置 > 运行窗格中更改对象同步超时

  • 要修改 UFT One 等待网页加载的时间量,请在文件 > 设置 > Web 窗格中更改浏览器导航超时

返回页首