使用测试引擎测试画布应用程序(预览版)

备注

预览功能不适合生产使用且功能可能受限。 这些功能在正式发布之前已经可用,以便客户可以抢先体验并提供反馈。

使用测试引擎 测试 画布应用需要执行以下步骤:

  1. 创建测试计划
  2. 设置您的用户
  3. 运行测试
  4. 查看结果

创建测试计划

测试计划使用 YAML 格式定义。 您可以 编写自己的测试计划从 Test Studio 下载录制的测试。

编写自己的测试计划

使用测试引擎 YAML 格式(预览版) Power Apps 中所述的测试计划架构创建 yaml 文件。

选择创作自己的测试计划时,可以利用以下功能:

  • 附加 Power Fx 功能:使用额外的注册 作 Power Fx 与组件框架(PCF)组件进行交互 ,从而增强 Power Apps 测试计划的功能。
  • 定义自定义数据结构和函数:利用用户定义类型(UDT)和用户定义函数(UDF)创建可重用和可维护的测试步骤。

小费

查看 GitHub 存储库中的可用示例 计划。

从 Test Studio 下载录制的测试

从 Test Studio 下载录制的测试可以快速捕获和回放用户与应用程序的交互。 此方法对于在不编写任何代码的情况下创建基本测试用例非常有用。 然而,它在灵活性和处理复杂场景的能力方面存在局限性。

如果您有在 Test Studio 录制的测试,则可以从 Test Studio 下载它们,以便在 Test Engine 中重复使用。

  • 使用 Test Studio 中的“下载套件 按钮下载测试计划。 如果有多个测试套件,请选择要下载的测试套件。

    Test Studio 下载测试套件按钮的屏幕截图

  • Alternatively,请使用每个测试套件下提供的下载 按钮。

    Test Studio 下载测试套件个人按钮截图

  • 如果为此应用使用不同的租户或环境,请确保更新配置文件和用户配置。

设置您的用户

测试引擎目前具有以下身份验证方法:

Method Description
存储状态 使用数据保护 API 将 Microsoft Windows 经过身份验证的用户状态本地存储在用户配置文件中
Dataverse 使用核心数据保护使用 Dataverse X.509 证书加密的您自己的客户管理密钥将经过身份验证的用户状态存储在内部 ASP.NET

不能将测试凭据存储在测试计划文件中。 必须选择 StoragestateDataverse 作为存储凭据的安全位置。 测试计划文件包含对用于 用户角色的环境变量 的引用。 例如,以下 YAML 代码片段指示 user1Email 使用了环境变量:

environmentVariables:
  users:
    - personaName: User1
      emailKey: user1Email

查看 用户 以获取更多信息。

使用以下 PowerShell 脚本将用户名存储在环境变量中。

$env:user1Email = "someone@example.com"

备注

环境变量中不再需要用户密码。 查看 支持选项的身份验证

运行测试

使用 PAC CLI pac test run 命令运行测试计划。

必需参数

您需要提供以下信息:

  • --test-plan-file:测试计划文件的路径
  • --tenant:您的租户 ID
  • --environment-id:您的环境 ID

示例命令

下面是为画布应用程序运行测试的示例:

pac test run `
   --provider canvas `
   --test-plan-file your-testplan.te.yaml `
   --tenant your-tenantid-guid-value `
   --environment-id your-environmentid-guid-value

您还可以使用较短的参数别名:

pac test run `
   -p canvas `
   -test your-testplan.te.yaml `
   -t your-tenantid-guid-value `
   -env your-environmentid-guid-value

Dataverse 集成

要启用 Dataverse 与画布应用测试的集成,您可以在测试设置中添加参数 enableDataverseFunctions

testSettings:
  extensionModules:
    enable: true
    parameters:
      enableDataverseFunctions: true

启用 Dataverse 集成时,需要使用对环境具有 Dataverse 权限的用户或服务主体打开 Azure CLI。 可以使用 az login 命令。 详细信息: 使用 Azure CLI 登录

用于集成的 Dataverse API URL 是从 pac test run 参数的--domain 主机域名中获取的,也可以通过定义 名为的 PowerShell 环境变量 DATAVERSE_URL获取的。

查看结果

测试完成后,您可以在输出目录中的文件中 .trx 查看测试结果。 此文件夹包含测试 recordVideo 捕获的任何屏幕截图或视频,当在测试计划 yaml 中设置为时 true