参数化 GUI 测试

在本练习中,您将学习如何参数化 UFT One 测试,以及如何在每次使用不同数据集的情况下在多个迭代中运行该测试。

新建要参数化的测试

创建现有 MyFlight 测试的副本,您可以在其中参数化数据,然后查看 UFT One 运行测试的方式有何不同。

要创建测试,请执行以下操作:

  1. 首先在 UFT One 中打开 MyFlightApplication 解决方案。

    如果您已关闭并打开 UFT One,请确保在已加载 WPF 插件的情况下启动它。

  2. 在解决方案浏览器中,右键单击 MyFlight 测试节点并选择“另存为”

  3. 将测试保存在同一位置 (C:\Users\<username>\Documents\UFT One)。

    在“文件名”字段中,输入 MyFlightParameter,然后单击“保存”

解决方案浏览器将转而切换为显示 MyFlightParameter 测试,并且所有操作和步骤均与原始 MyFlight 测试相同。

提示: 要同时显示两个测试,请将 MyFlight 测试重新添加到解决方案中。

在解决方案浏览器中,右键单击该解决方案节点,然后选择“添加”>“添加现有测试”。选择 MyFlight 测试。

返回页首

将数据添加到测试中

MyFlightParameter 测试中,更新测试中的 departurearrival 城市,以使用参数值而非静态值。这使您能够在每次测试运行中测试不同的城市。

要对测试进行参数化,请执行以下操作:

  1. UFT One 中,显示“数据”窗格。选择“查看”>“数据”

  2. 打开 FlightFinder 操作并在关键字视图中进行查看。

  3. fromCity 行中,单击“值”单元格,然后单击单元格右侧的 参数化按钮。

  4. 在显示的弹出窗口中,选择“数据表”选项卡。

    然后,在弹出窗口的底部单击“+ 添加新参数”

  5. 在打开的“值配置选项”对话框中,保留默认选择的“参数”,并将参数名称定义为 fromCity

    选中“全局表”位置。

    单击确定关闭对话框。

    在关键字视图中,将 fromCity 值更新为使用新参数,并且数据表现在会将 Los Angeles 作为第一个值列在 fromCity 列中。

  6. 将更多数据添加到 fromCity 参数中。在“数据”表中的 Los Angeles 下方,添加以下值 (每行一个值):

    • Denver
    • Frankfurt
    • London
  7. toCity 值创建第二个参数。这次直接在“数据”表中创建参数。

    在“数据”表中,单击 B 列中的第一行,然后输入 toCity 作为新的参数名称。

    然后,在“数据”表的 toCity 列中,添加以下值 (每行一个值):

    • Los Angeles
    • London
    • Frankfurt
  8. 参数化 toCity 步骤。在关键字视图中,双击 toCity 步骤的“值”单元格,然后单击 参数化按钮。

    在弹出窗口中,单击“数据表”选项卡,然后双击 toCity 参数以将其插入为值。

    Enter 完成该步骤。

    现在,关键字视图步骤和“数据”表应如下所示:

  9. 保存测试,然后继续学习运行参数化测试

备注: 要了解有关 UFT 数据源和数据表类型的更多信息,请参阅有关数据源的更多信息

返回页首

运行参数化测试

配置 UFT One 以多次运行测试,每次使用不同的数据集。

要运行测试,请执行以下操作:

  1. 选择“录制”>“录制和运行设置”。

  2. 在“Windows 应用程序”选项卡中,选择“在任何打开的基于 Windows 的应用程序上录制并运行测试”,然后单击“应用”

  3. 单击“确定”以返回到 UFT One 主窗口。

  4. 单击 MyFlightParameter 测试选项卡以显示包含参数化操作的画布。

  5. 将两个新操作添加到测试中,并在两次测试迭代之间打开和关闭 MyFlights 示例应用程序:

    右键单击并选择“插入对新操作的调用”。将新操作命名为 OpenAppCloseApp

  6. 选择 OpenApp 操作并将其拖到测试的顶部。

  7. 在编辑器中打开 OpenApp 操作,并添加以下命令以关闭先前运行的所有剩余进程:

    SystemUtil.closeProcessByName("FlightsGUI.exe")
  8. 使用步骤生成器添加 FlightsGUI 应用程序。或者,在编辑器中,将以下步骤添加到 OpenApp 操作中:

    SystemUtil.Run "C:\Program Files (x86)\OpenText\UFT One\samples\Flights Application\FlightsGUI.exe"
  9. 在编辑器中打开 CloseApp 操作,然后添加以下步骤:

    SystemUtil.closeProcessByName("FlightsGUI.exe")
  10. 选择“文件”>“设置”>“运行”节点以打开“设置”对话框。

  11. 在“数据表迭代”部分中,选择“在所有数据行上运行”。这将确保 UFT One 为全局数据表中的每一行运行测试迭代。

    关闭对话框。

  12. 检查是否需要更新。
  13. 运行测试。单击 “运行”

    在“运行”对话框中:

    • 确保选择 MyFlightParameter 作为“测试名称”
    • 在“结果位置”选项卡中,选择“新建运行结果文件夹”
    • 接受所有其他默认设置。

    单击“确定”以运行测试。测试运行完成后,运行结果将打开。

返回页首

分析运行结果

您的运行结果这次会显示四个不同的节点,每个节点对应一个测试迭代。这些节点对应于全局数据表中的四个不同数据行。

为每个迭代展开 FlightFinder 操作节点。单击 fromCity.SelecttoCity.Select 步骤以查看每个迭代的步骤详细信息。

返回页首

有关数据源的更多信息

UFT One 使您可以添加使用以下数据源的参数值:

  • 全局数据表。该数据表中包含对测试中所有操作可用的参数和值。

    测试运行的次数将与数据表中的数据行一样多。这是本练习中使用的选项。

  • 操作数据表。该数据表中包含仅对关联操作可用的参数和值。

    在一个测试迭代内,操作自身运行的次数将与数据表中的数据行一样多。

  • 环境变量。测试中具有固定值的变量集。

  • 随机数字。测试运行时由 UFT One 生成的随机数字。

有关更多详细信息,请参阅参数化对象值以及值配置和参数化

返回页首

后续步骤: