使用 Azure DevOps Server 触发并行测试任务

GUI Web 和移动测试

本主题介绍如何触发并行测试任务以从 Azure DevOps Server (以前称为 TFS) 并行运行 GUI Web 和 GUI Mibile 测试。

备注: 本主题描述如何使用 UFT One Azure DevOps extension 版本 24.2.*。为了从最新功能中受益,建议将现有任务的版本更新到 24.2.*。使用此扩展版本时,请确保从 ADM-TFS-Extension GitHub 存储库安装了相应的 UFT.zip 文件。

步骤 1: 创建管道

备注: 如果使用的是 TFS,请跳过此步骤。

在 Azure DevOps Server 中,执行以下操作:

  1. 使用 Empty job 模板创建构建管道或发布管道。

    注: 构建管道是在您未显式创建发布管道时创建的管道类型。

  2. 选择包含要运行测试的代理的代理池。

  3. 在管道变量中,添加一个 UFT_LAUNCHER 变量。该变量的值应为 UFTWorking 文件夹的完整路径。

有关更多详细信息,请参阅 Microsoft Azure 文档

返回页首

步骤 2: 将任务添加到管道

添加 UFT One 任务,然后按照构建顺序将该步骤置于正确位置中。

备注: 如果您正在使用发布管道,请在相关阶段添加任务,然后将步骤放入构建中。

  1. 从“任务”目录中,选择“测试”选项卡。将显示所有可用测试任务的列表。

  2. 在“测试”选项卡中,选择“UFT One 并行测试运行”任务,然后单击“添加”。添加的空白新任务将作为构建管道的一部分。

    备注: 如果您正在使用发布管道,则该任务将作为部署过程的一部分添加。

返回页首

步骤 3: 配置构建步骤

为构建步骤提供以下信息。

  1. 指定“显示名称”

    默认情况下,Azure DevOps Server CI 系统将使用任务的预设描述符。指定该字段并为步骤提供更有意义的名称。

  2. 选择“测试类型”

    根据选择的测试类型,页面上的控件和字段会有所不同。

  3. 在“测试”字段中,输入测试、测试批处理文件或包含要运行的测试的文件夹。对于多个测试,测试路径、名称或测试结果路径应以逗号分隔。

  4. 对于 GUI Web 测试类型,选择测试中使用的所有浏览器。

  5. 对于 GUI Mobile 测试类型,指定以下字段:

    设备

    指定设备列表。每行必须包含单个设备的信息。

    对于每个设备,定义以下字段:

    “设备 ID”、“制造商”、“型号”、“操作系统类型”和“操作系统版本”

    您可以通过运行获取 Digital Lab 资源任务 (以前称为“UFT Mobile 获取资源”),获取字段值。

    如果为设备提供了“设备 ID”的值,将忽略其他字段。

    示例:

    设备 ID: "123456789",制造商: "Samsung",型号: "SM-G920F",操作系统类型: "ANDROID",操作系统版本: "7.0"

    设备 ID: "123456788",制造商: "Samsung",型号: "SM-G920A",操作系统类型: "ANDROID",操作系统版本: "7.5"

    服务器Digital Lab 服务器的地址,格式为“http[s]://<服务器名称>:<端口>”
    身份验证类型

    选择用于连接到 Digital Lab 的身份验证模式:

    • 基本身份验证。使用用户名和密码进行身份验证。

    • 访问密钥身份验证。使用您从 Digital Lab 收到的访问密钥进行身份验证。

    用户名和密码。如果您选择了“基本身份验证”,请输入 Digital Lab 服务器的登录凭据。

    访问密钥。如果选择了“访问密钥身份验证”,请输入从 Digital Lab 收到的访问密钥。

    使用代理服务器设置

    如果已选择使用代理服务器进行连接,请提供以下信息:

    代理服务器: 代理服务器的地址,格式为“<代理服务器名称>:<端口>”

    使用代理服务器凭据。使您可以使用特定帐户连接到 Digital Lab 服务器。

    代理服务器用户名和密码。在选择了“使用代理服务器凭据”的情况下用于连接到 Digital Lab 服务器的凭据。

    已启用 SSL

    指定是否为 Digital Lab 连接启用 SSL。

    注: 仅当 Digital Lab 服务器配置为通过 SSL 通信时才选择此选项。

  6. 在“扩展”选项卡中定义用于报告的时间戳字段的值格式。

    默认值为 yyyy-MM-dd HH:mm:ss

  7. 指定无法打开或运行测试时要等待的时间 (以秒为单位)。如果该字段留空,则不存在超时。

  8. 选择是否生成提供有关测试的失败步骤信息的报告。运行后,报告在“扩展”选项卡中可用。

返回页首

步骤 4: 将测试结果上传到 Azure 存储位置

通过将 UFT One 结果上传到 Azure 存储,可以在测试运行后从 Azure DevOps 门户访问结果。

确保您执行了为您的 UFT One 检测结果设置 Azure 存储中描述的步骤。

然后在“UFT One 并行测试运行”构建步骤中输入以下选项:

是否要将 UFT 报告上传到存储帐户?

选择“是”

要上传的项目

选择上传 html 运行结果报告和/或所有 UFT One 结果文件的存档。

报告文件名

接受基于管道名称和内部版本号的默认文件名,或者输入您选择的名称。

返回页首

步骤 5: 配置 CI 系统控制选项

配置构建步骤的控制选项,包括:

已启用指定是否应在此构建过程中运行步骤。
出错时继续指示 CI 系统在此步骤出错时停止或继续构建。

返回页首

步骤 6: 设置管道

将您的管道设置为运行:

构建管道: 保存管道并将其排队。

发布管道: 创建版本并部署管道。

当管道运行时,UFT One 测试作为您添加的任务的一部分运行。

返回页首

步骤 7: 查看并行运行结果

测试运行之后,可以在“扩展”选项卡中查看运行结果:

可视报告

在运行结果的“扩展”选项卡中,您可以看到包含以下部分的报告: 

  • “运行摘要”显示运行的测试数量以及每个状态的百分比。

  • “UFT 报告”部分显示每个测试的测试名称、测试类型、浏览器类型/设备信息以及测试运行状态,以及指向 UFT One 报告和存档的链接 (如果它们已上传到 Azure 存储)。

  • 如果您选择了“生成‘失败的测试’报告”选项,“失败的测试”部分会显示每个测试的失败步骤的详细细分。

备注:  

  • 如果您正在使用发布管道,则这些结果可在“阶段”级别获得。

  • 有时,如果您在测试运行期间中止作业,则不会显示“扩展”选项卡。即使“扩展”选项卡可用,且您选择了“生成‘失败的测试’报告”选项,也不会显示“失败的测试”部分。

检索运行结果文件

  • 详细的失败结果以 JUnit 格式存储在位于“UFTWorking/res/Report_<构建运行编号>”文件夹的 junit_report.xml 文件中。

  • 如果 UFT One html 报告和存档文件已上传到 Azure 存储,您可以在存储容器中访问它们。

  • 如果您在测试运行期间中止作业,则在作业停止之前执行的所有测试的结果将保存到 %UFT_LAUNCHER%\res\Report_###\ 文件夹的 Results###.xml 文件中。

备注: 在并行测试运行中,设备或浏览器设置不正确的测试不会运行,并且运行结果仅包含在管道中运行的测试的结果。

返回页首