Test Suite
2023.4
False
横幅背景图像
Test Suite 用户指南
上次更新日期 2024年2月28日

作业任务

概述

您的管道由不同的阶段组成,而这些阶段又可以分解为多个作业。对于每个作业,您可以配置步骤以包含 UiPath 任务,这些任务包含在 UiPath DevOps 集成中。

重要提示:2023 年 4 月2023.4 版本开始,系统将阻止传统文件夹中的新执行内容。对于在其配置中包含传统文件夹的任务,系统将显示 Folder not found 消息,并且不会执行该任务。单击此处了解有关删除传统文件夹的更多信息。

先决条件

要准备环境,请参阅 Azure DevOps 扩展程序先决条件

注意事项

在开始在管道中执行任务之前,请考虑以下事项:

  • 您只需在基于 Windows 的构建代理上执行 UiPath 任务。
  • 配置 UiPath Orchestrator 服务连接
  • 测试功能需要 Orchestrator 2020.4 或更高版本。
  • 如果您将 Orchestrator 的内部部署版本与 HTTPS 一起使用,请导入 SSL 证书,以确保对 Orchestrator 的 HTTPS 调用受信任。

命令行接口

Azure DevOps 扩展程序附带一个特定于 UiPath 的内置 CLI(命令行界面)。

缓存 CLI

通过构建代理运行时,CLI 会与 Orchestrator 通信,并允许您执行作业任务。

默认情况下,CLI 预打包在 AzureDevOps 扩展中,并在首次执行时存储在Agent.ToolsDirectory (Azure 缓存)中。
通过构建代理运行作业任务时,系统会检查Agent.ToolsDirectory中是否应包含 CLI,以完成执行。
如果在Agent.ToolsDirectory (Azure 缓存)中找不到 CLI,系统会自动从 NuGet 公共订阅源下载 CLI。 这样做的要求是 NuGet 公共订阅源不受防火墙阻止,并且可以从生成代理访问。
如果您无法从构建代理打开防火墙,则可以使用“安装平台”任务手动下载 CLI(与当前插件使用的内部版本对应),并手动将其放入Agent.ToolsDirectory中。

将 UiPath 任务添加到管道代理池

要在管道中定义自动化程序,您需要向代理池添加并配置单个任务。

  1. 在 Azure DevOps 中,转到“管道”。
  2. 创建新管道或编辑现有管道。
  3. 将作业添加到代理池。
  4. 搜索以下任务之一:
    1. UiPath 运行作业
    2. UiPath 管理资产
    3. UiPath 安装平台
    4. UiPath 包
    5. UiPath 部署
    6. UiPath 测试
  5. 单击“添加”并配置任务。
  6. 如果需要,重新排列代理池中的任务,然后保存管道。
docs image

UiPath 运行作业

您可以使用此任务来执行已在 Orchestrator 实例上部署的流程。有关更多信息,请参见流程作业

配置

使用下表配置“UiPath 运行作业”输入。

输入描述
显示名称是必填项 输入租户的名称。
需要 Orchestrator 连接 配置服务连接以访问 UiPath Orchestrator 服务。您只能为此步骤配置连接,也可以使用现有的全局连接。有关更多信息,请参阅“配置 UiPath Orchestrator 服务连接”。
流程(必填) 流程是链接到特定文件夹类型的包版本。 您需要根据部署流程的文件夹类型配置此输入。对于新式文件夹,输入是“流程”选项卡中列出的流程名称。 要找出流程名称,您可以打开 Orchestrator,打开您的文件夹,然后导航到“自动化” >“流程”。对于传统文件夹(已弃用),输入的内容是流程名称的名称,后跟下划线,然后是环境名称,即托管机器人的地方。作为此命名约定的示例,请考虑以下变量:流程的名称为TestAutomation 。 环境的名称为Production 。此输入的流程名称为TestAutomation_Production
输入参数指定 JSON 输入文件的文件路径,例如Input\jobParameters.json
优先级如果要在流程级别设置特定顺序,请选择作业执行的优先级。默认情况下,系统设置为 Normal
Orchestrator 文件夹(必需) 指定正在部署流程的文件夹。对于传统文件夹,您可以使用指定的机器人名称。对于新式文件夹,您可以使用指定的用户和计算机名称。

要输入子文件夹,请确保同时输入父文件夹的名称和子文件夹的名称。例如,使用“AccountingTeam\TeamJohn”。

策略指定动态分配或特定于机器人的执行策略。对于动态分配的作业,将在可用的帐户和计算机下执行流程或者,您可以选择特定于机器人的作业。
作业类型 仅适用于新式文件夹。选择要用于执行作业的运行时的许可模式。有关更多信息,请参阅“关于许可章节”。
作业数 仅适用于动态分配策略。指定要运行此任务的次数。 默认情况下,此输入设置为1
用户 仅与动态分配策略一起在新式文件夹中可用。添加计算机用户名。例如,此输入的本地用户为 MachineName\UserName
计算机 仅与动态分配策略一起在新式文件夹中可用。运行执行的计算机的名称。
输出结果收集在 JSON 文件中。您需要指定作业结果的路径(例如Output\testResults.json)。如果将此输入留空,则默认输出将发送到以下名称的工件登台目录UiPathResults.json
超时指定请求超时前要等待的秒数。
作业失败时失败的任务如果要在至少一个作业失败时将任务设置为失败,请选择此输入。默认情况下未选中此选项。
等待作业完成等待作业运行结束。默认情况下未选中此选项。
追踪级别从下拉列表中选择用户。
机器人 ID指定机器人名称的逗号分隔列表。

YAML 管道

您可以为 UiPath 运行作业预览完全解析的 YAML 文档。
- task: UiPathRunJob@2
  displayName: 'Start ProcessProject'
  inputs:
    #orchestratorConnection: 'service-connection-name' # Service connection to UiPath Orchestrator
    #processName: 'ProccessProject_CI-Pipeline' # The name of the process
    #parametersFilePath: 'Input\\jobParameters.json' # json file with input values if the process requires them
    #priority: 'Low' # Options 'Low', 'Normal', 'High'
    #folderName: 'MyFolder' # Specify the folder to deploy to. For clasic folders, you can use specific robot names. For modern folders, you can use specific user and machine names.
    #strategy: 'Dynamically' # Options 'Specific', 'Dynamically'
    #jobCount: 1 # The number of job runs. (default 1) - used if strategy is 'Dynamically'
    #user: 'MyUser'
    #machine: 'machine'
    #robotsIds: 'robot1, robot2'
    #resultFilePath: 'Output\\testResults.json'
    #timeout: 3600
    #failWhenJobFails: false
    #waitForJobCompletion: false,
    #traceLevel: 'None' # Options: Critical, Error, Warning, Information, Verbose, None- task: UiPathRunJob@2
  displayName: 'Start ProcessProject'
  inputs:
    #orchestratorConnection: 'service-connection-name' # Service connection to UiPath Orchestrator
    #processName: 'ProccessProject_CI-Pipeline' # The name of the process
    #parametersFilePath: 'Input\\jobParameters.json' # json file with input values if the process requires them
    #priority: 'Low' # Options 'Low', 'Normal', 'High'
    #folderName: 'MyFolder' # Specify the folder to deploy to. For clasic folders, you can use specific robot names. For modern folders, you can use specific user and machine names.
    #strategy: 'Dynamically' # Options 'Specific', 'Dynamically'
    #jobCount: 1 # The number of job runs. (default 1) - used if strategy is 'Dynamically'
    #user: 'MyUser'
    #machine: 'machine'
    #robotsIds: 'robot1, robot2'
    #resultFilePath: 'Output\\testResults.json'
    #timeout: 3600
    #failWhenJobFails: false
    #waitForJobCompletion: false,
    #traceLevel: 'None' # Options: Critical, Error, Warning, Information, Verbose, None

UiPath 管理资产

您可以使用此任务在 Orchestrator 实例上部署、更新或删除资产。

支持以下资产类型:

  • Text - 仅存储字符串(不需要添加引号)
  • Boolean - 支持值 True 或 False
  • Integer - 仅存储整数
  • Credential - 包含机器人执行特定流程所需的用户名和密码。对于此资产类型,您需要通过使用 :: 分隔两个字段来对用户名和密码进行编码。
要部署资产,您需要将其添加到以 UTF-8 编码的 CSV 文件中,如下例所示:
name,type,value, description asset_1_name,text,asset_value, asset_2_name,integer,123,asset_3_name,boolean,false, this is an asset description asset_4_name,credential,"username::password",name,type,value, description asset_1_name,text,asset_value, asset_2_name,integer,123,asset_3_name,boolean,false, this is an asset description asset_4_name,credential,"username::password",

有关更多信息,请参阅“Orchestrator 资产”。

配置

使用下表配置“UiPath 管理资产”输入。

参数描述
显示名称是必填项 输入租户的名称。
需要 Orchestrator 连接 配置服务连接以访问 UiPath Orchestrator 服务。您只能为此步骤配置连接,也可以使用现有的全局连接。有关更多信息,请参阅“配置 UiPath Orchestrator 服务连接”。
Orchestrator 文件夹(必需) 指定正在部署流程的文件夹。对于传统文件夹,您可以使用指定的机器人名称。对于新式文件夹,您可以使用指定的用户和计算机名称。

要输入子文件夹,请确保同时输入父文件夹的名称和子文件夹的名称。例如,使用“AccountingTeam\TeamJohn”。

选择资产操作(必填) 从下拉列表中选择一个选项。
资产 CSV 文件(必填) 添加 CSV 文件路径。您可以将同一文件用于“部署”和“更新”资产操作。注意事项:
  • 允许在值中使用引号(例如""A new version of RPA REPORT – AM Email Quote to Agent is available""
  • 支持 JSON 值(例如 "{""MaxRetryNumber"":3,""Name"":My Test Process}" )
  • 不支持注释(例如 asset_1_name,credential,""username::password"" # asset_1_description comment )
对于“删除资产”操作,您只能使用名称列,并将其他列留空。
(可选)您可以使用以下语法为每个资产设置说明: type, value ,description
追踪级别从下拉列表中选择用户。

YAML 管道

您可以为“UiPath 管理资产”预览完全解析的 YAML 文档。
- task: UiPathAssets@2
  displayName: 'Deploy/Update assets'
  inputs:
    #orchestratorConnection: 'service-connection-name' # Service connection to UiPath Orchestrator
    #assetActionType: 'Deploy' # Options: Deploy, Delete
    #csvFile: 'assets_deploy.csv' # the path to the csv file containing the assets description,
    #traceLevel: 'None' # Options: Critical, Error, Warning, Information, Verbose, None- task: UiPathAssets@2
  displayName: 'Deploy/Update assets'
  inputs:
    #orchestratorConnection: 'service-connection-name' # Service connection to UiPath Orchestrator
    #assetActionType: 'Deploy' # Options: Deploy, Delete
    #csvFile: 'assets_deploy.csv' # the path to the csv file containing the assets description,
    #traceLevel: 'None' # Options: Critical, Error, Warning, Information, Verbose, None

UiPath 安装平台

当生成代理无权访问 UiPath NuGet 订阅源时,您可以使用安装 UiPath 平台任务。您应在执行扩展程序中的任何其他任务之前执行安装 UiPath 平台任务。此任务具有所有其他 UiPath 任务正在使用的预打包工具。该任务是可选的,但其优点是可减少执行其他任务的时间。

CLI 版本选择器

从“ 选择 CLI 版本 (必需)” 下拉列表中选择要与 Azure DevOps 扩展一起使用的 CLI 版本。

下拉列表中的选项包括:

  • CLI 的最新可用版本。
  • 与所选 CLI 版本兼容所需的环境要求。

CLI 的 nupkg 的路径

如果您的管道无法访问 UiPath 公共订阅源,并且无法下载您从下拉列表中选择的 CLI 版本,请按照以下步骤操作:

  1. UiPath 公共订阅源中下载所需的 CLI 版本。
  2. 将下载的 NUPKG 文件放置在构建代理的Agent.Tools目录中。 记住Agent.Tools目录中 NUPKG 文件的路径。 例如, $(Agent.ToolsDirectory)\nupkg\UiPath.CLI.xx.xx.xx.nupkg
  3. 使用 InstallPlatform 任务,并在“CLI 的 nupkg 路径” 字段中输入步骤 2 中使用的路径。

YAML 管道

您可以为 UiPath 安装平台预览完全解析的 YAML 文档,包括 CLI 版本选取器:

- task: UiPathInstallPlatform-preview@2
  displayName: 'UiPath Install Platform'
  inputs:
    cliVersion: 'WIN_22.10.8418.30339' or 'X_22.10.8418.30339' or '21.10.8319.10920
    cliNupkgPath:'$(Agent.ToolsDirectory)\nupkg\UiPath.CLI.X.22.10.8418.30339.nupkg'- task: UiPathInstallPlatform-preview@2
  displayName: 'UiPath Install Platform'
  inputs:
    cliVersion: 'WIN_22.10.8418.30339' or 'X_22.10.8418.30339' or '21.10.8319.10920
    cliNupkgPath:'$(Agent.ToolsDirectory)\nupkg\UiPath.CLI.X.22.10.8418.30339.nupkg'

UiPath 包

使用 UiPathPack 任务,您可以将现有的 UiPath 项目打包到 NuGet 包中。

配置

使用下表配置 UiPath Pack 输入。

参数描述
显示名称是必填项 输入租户的名称。
选择版本控制方法(必需) 您可以选择自动生成的版本、使用项目版本或定义新版本。有关更多信息,请参阅“包版本”。
版本(必填项) 仅与动态分配策略一起在新式文件夹中可用。手动指定包版本可更高效追踪已生成的包及其源版本控制。例如,可利用 Microsoft 程序集模式生成 NuGet 包版本:[Major].[Minor].[BuildNumber].[RevisionNumber]。
项目路径(必填) 选择要打包的项目的位置。该位置可为 project.json 文件的直接路径,或包含一个或多个项目的目录。如果是后者,则针对每个级别,系统均会分别打包每个项目。
选择输出类型(仅手动版本控制需要) 为要打包的项目设置项目类型。 如果设置None ,则将从项目的 JSON 文件中提取项目类型。支持以下项目类型:“流程”、“库”、“测试”、“对象”、“无”。
需要 Orchestrator 连接 配置服务连接以访问 UiPath Orchestrator 服务。您只能为此步骤配置连接,也可以使用现有的全局连接。有关更多信息,请参阅“配置 UiPath Orchestrator 服务连接”。
输出路径设置要放置包的文件夹路径。
运行工作流分析选择此选项可对自动化项目运行工作流分析规则(例如,出现错误时失败的作业)。默认情况下,此选项未激活。有关更多信息,请参阅“应用程序测试工作流分析器规则”。
追踪级别从下拉列表中选择用户。

YAML 管道

您可以为 UiPath 包预览完全解析的 YAML 文档。
- task: UiPathPack@2
  inputs:
    #versionType: AutoVersion # Options: AutoVersion, CurrentVersion, ManualVersion 
    #version: '1.0.0' # Required when versionType == ManualVersion
    #projectJsonPath: '$(Build.SourcesDirectory)\MyFirstProcess'
    #outputPath: '$(Build.ArtifactStagingDirectory)\Packages\MyFirstProcess'
    #outputType: 'None' # Options: Process, Library, Tests, Objects, None
    #runWorkflowAnalysis: 'False'
    #orchestratorConnection: 'service-connection-name' # Service connection to UiPath Orchestrator,
    #traceLevel: 'None' # Options: Critical, Error, Warning, Information, Verbose, None- task: UiPathPack@2
  inputs:
    #versionType: AutoVersion # Options: AutoVersion, CurrentVersion, ManualVersion 
    #version: '1.0.0' # Required when versionType == ManualVersion
    #projectJsonPath: '$(Build.SourcesDirectory)\MyFirstProcess'
    #outputPath: '$(Build.ArtifactStagingDirectory)\Packages\MyFirstProcess'
    #outputType: 'None' # Options: Process, Library, Tests, Objects, None
    #runWorkflowAnalysis: 'False'
    #orchestratorConnection: 'service-connection-name' # Service connection to UiPath Orchestrator,
    #traceLevel: 'None' # Options: Critical, Error, Warning, Information, Verbose, None

UiPath 部署

使用 UiPathDeploy 任务,您可以将 UiPath NuGet 包部署到 UiPath Orchestrator 上。

配置

使用下表配置 UiPath 部署输入。

参数描述
显示名称是必填项 输入租户的名称。
需要 Orchestrator 连接 配置服务连接以访问 UiPath Orchestrator 服务。您只能为此步骤配置连接,也可以使用现有的全局连接。有关更多信息,请参阅“配置 UiPath Orchestrator 服务连接”。
(必填) 定义 UiPath NuGet 包的订阅源。
自动创建流程如果要在不创建流程的情况下部署包,请选择此选项。 默认情况下选中该选项。如果选中,则需要配置“入口点路径”参数。
Orchestrator 文件夹(必需) 指定正在部署流程的文件夹。对于传统文件夹,您可以使用指定的机器人名称。对于新式文件夹,您可以使用指定的用户和计算机名称。
要输入子文件夹,请确保同时输入父文件夹的名称和子文件夹的名称。例如,AccountingTeam\TeamJohn
环境(可选)如果使用传统文件夹(已弃用),则需要定义将要部署包的环境。您可以使用此字段创建或更新包。您可以使用以下示例将环境添加到此字段,以逗号分隔:testingEnvironment,productionEnvironment
入口点路径 (必填) 指定入口点路径以创建或更新流程。入口点路径指定从项目根目录开始的文件路径。在配置入口点路径之前,请考虑以下事项:入口点可用于 Orchestrator 21.4 或更高版本(例如 21.4.UiPathDeploy.entryPoints)。对于低于 21.4 的 Orchestrator 版本,您需要输入任意值,因为该字段不得留空。默认入口点设置为 Main.xaml。可以将多个入口点指定为“Main.xaml、EntryPoint2.xaml”。对于传统文件夹(已弃用),您只能为每个环境指定一个入口点。对于嵌套文件夹,您需要如以下所示指定文件路径:Folder01/Folder02/Main.xamlFolder01/Folder02/Entrypoint.xaml 有关更多信息,请参见 Orchestrator 入口点
追踪级别从下拉列表中选择用户。

YAML 管道

您可以为 UiPath 部署预览完全解析的 YAML 文档。
- task: UiPathDeploy@2
  inputs:
    #orchestratorConnection: # Service connection to UiPath Orchestrator
    #packagesPath: '$(Build.ArtifactStagingDirectory)\Packages\ITAutomationProcess'
    #folderName: 'ITAutomation'
    #environments: 'AutomationRobots' # Optional,
    #traceLevel: 'None' # Options: Critical, Error, Warning, Information, Verbose, None- task: UiPathDeploy@2
  inputs:
    #orchestratorConnection: # Service connection to UiPath Orchestrator
    #packagesPath: '$(Build.ArtifactStagingDirectory)\Packages\ITAutomationProcess'
    #folderName: 'ITAutomation'
    #environments: 'AutomationRobots' # Optional,
    #traceLevel: 'None' # Options: Critical, Error, Warning, Information, Verbose, None

UiPath 测试

通常, UiPath 测试任务在 Orchestrator 上运行现有测试集。此外,您可以通过指定 UiPath 测试项目的路径,将其用于打包、部署和运行测试用例。后一个选项在 Orchestrator 中显示为暂态测试集。

任务执行完成后,测试结果将上传到 Azure DevOps 中的“测试”选项卡。您可以 JUnit 格式指定测试结果输出路径。

根据结果,构建将被标记为成功(所有测试用例都通过)或失败(至少一个测试用例失败)。

配置

使用下表配置 UiPath 测试输入。

参数描述
显示名称是必填项 输入租户的名称。
选择测试执行方法选择要执行的测试:执行测试集:在 Orchestrator 中指定并运行现有测试集。在项目中执行测试:指定项目,部署包并将测试用例作为暂态测试集的一部分运行。
需要 Orchestrator 连接 配置服务连接以访问 UiPath Orchestrator 服务。您只能为此步骤配置连接,也可以使用现有的全局连接。有关更多信息,请参阅“配置 UiPath Orchestrator 服务连接”。
输入参数指定 JSON 输入文件的文件路径,例如Input\jobParameters.json 。 如果要在测试集级别创建新输入参数,请指定type参数。 否则,您可以使用namevalue
测试集执行测试集方法需要) 要执行的测试集的显示名称。确保测试集包含最新版本的测试用例。
如果测试集不在默认文件夹中,请确保在其前面添加相关文件夹名称。例如,AccountingTeam\TestSet
测试项目路径在项目方法中执行测试需要) 指定将作为暂态测试集的一部分执行的测试项目位置。
环境在项目方法中执行测试需要) 如果使用传统文件夹(已弃用),则需要定义将要部署包的环境。您可以使用此字段创建或更新包。您可以使用以下示例将环境添加到此字段,以逗号分隔:testingEnvironment, productionEnvironment
Orchestrator 文件夹(必需) 指定正在部署流程的文件夹。对于传统文件夹,您可以使用指定的机器人名称。对于新式文件夹,您可以使用指定的用户和计算机名称。
要输入子文件夹,请确保同时输入父文件夹的名称和子文件夹的名称。例如,AccountingTeam\TeamJohn
测试结果输出路径以 JUnit 格式(例如Output\testResults.json)指定测试结果输出路径。
超时指定请求超时前要等待的秒数。
追踪级别从下拉列表中选择用户。
附加机器人日志选择此选项可附加正在执行的机器人中的 INFO 级别日志。默认情况下,此选项处于取消选中状态。有关更多信息,请参阅“机器人日志”。

YAML 管道

您可以为 UiPath 测试预览完全解析的 YAML 文档。
-- task: UiPathTest@2
  inputs:
    #testTarget: TestProject # Options: TestProject, TestSet
    #orchestratorConnection: # Service connection to UiPath Orchestrator
    #testProjectPath: '$(Build.SourcesDirectory)\MobileAutomationTests' # Required only when testTarget = TestProject
    #testSet: 'MobileAutomationTests' # Required only when testTarget = TestSet
    #folderName: 'MobileAutomationTesting'
    #environment: 'TestingRobots' # Required only when testTarget = TestProject and the folder is a classic folder
    #testReportDestination: '$(Build.ArtifactStagingDirectory)\report.xml' # Optional
    #timeout: 200 # Optional, default = 3600s,
    #traceLevel: 'None' # Options: Critical, Error, Warning, Information, Verbose, None task: UiPathTest@2-- task: UiPathTest@2
  inputs:
    #testTarget: TestProject # Options: TestProject, TestSet
    #orchestratorConnection: # Service connection to UiPath Orchestrator
    #testProjectPath: '$(Build.SourcesDirectory)\MobileAutomationTests' # Required only when testTarget = TestProject
    #testSet: 'MobileAutomationTests' # Required only when testTarget = TestSet
    #folderName: 'MobileAutomationTesting'
    #environment: 'TestingRobots' # Required only when testTarget = TestProject and the folder is a classic folder
    #testReportDestination: '$(Build.ArtifactStagingDirectory)\report.xml' # Optional
    #timeout: 200 # Optional, default = 3600s,
    #traceLevel: 'None' # Options: Critical, Error, Warning, Information, Verbose, None task: UiPathTest@2

此页面是否有帮助?

获取您需要的帮助
了解 RPA - 自动化课程
UiPath Community 论坛
Uipath 白色徽标
信任与安全
© 2005-2024 UiPath. All rights reserved.