章节目录:
前言
环境管理器是 Parasoft 持续测试平台(CTP)中的一个接口,用于快速配置和提供测试环境的实例。Jenkins 的环境管理器插件允许您配置跨软件交付管道进行自动化、持续测试所需的各种操作。可以配置以下构建步骤:
- 将环境配置到自动化测试所需的特定状态
- 将环境和相关资产复制到不同的 Virtualize 服务器,包括从 Docker 或其他容器技术动态供应的服务器
- 执行 Parasoft 测试场景作业(执行的测试套件 vs. 特定环境配置)
- 销毁“被弄脏”的测试环境,以确保后续测试总是在“干净”的环境中开始
- 从 CTP 中断开虚拟服务器以删除不必要的连接
- 将测试执行结果发布到 Parasoft DTP。
要求
- CTP 2.7.4 或更高版本
- Virtualize 9.9.4 或更高版本
- CTP 1.625.3 或更高版本
- JUnit 插件 v.1.10
- DTP 5.4.0 或更高版本(用于将测试执行 XML 报告发布到 DTP)
- DTP 5.4.2 或更高版本(用于将测试执行环境信息发布到 DTP)
配置
每个 Jenkins 服务器与一个 CTP 实例通信,但是多个 Jenkins 服务器可以与同一个 CTP 实例通信。
- 选择 Manage Jenkins> Configure System。
- 在 Parasoft 环境管理器区域中,输入您的环境管理器 URL、用户名和密码。可以点击测试连接以确保 Jenkins 成功地与环境管理器沟通。
- 如果想添加一个构建步骤来将测试执行结果发布到 DTP,请在 Parasoft DTP 部分中为您的 DTP 服务器指定 URL、用户名和密码。
向作业添加环境管理器构建步骤
可以向 Jenkins 作业添加任意数量的环境管理器构建步骤。
- 打开要配置的作业并选择 Configure。
- 在 Build 区域,点击 Add build step,并选择一个可用的 Parasoft 环境管理器构建步骤:
部署环境 | 将环境提供到测试所需的特定状态,并可选地将环境和相关资产复制到不同的 Virtualize 服务器(包括 Docker 或其他容器技术动态提供的服务器)。请参阅Configuring a Deploy an Environment Build Step。 |
---|---|
执行测试场景任务 | 执行环境管理器连接实例上可用的一个测试场景作业(执行特定环境配置的测试套件)。请参阅Configuring an Execute a Test Scenario Job Build Step。 |
销毁环境 | 删除“被弄脏”的测试环境,以确保后续测试总是以“干净”的测试环境开始。请参阅Configuring a Destroy an Environment Build Step。 |
断开 Virtualize 服务器 | 从环境管理器中注销指定的 Virtualize 服务器。请参阅Configuring a Disconnect a Virtualize Server Build Step。 |
配置部署环境构建步骤
该构建步骤将环境提供给测试所需的特定状态。作为一个额外的选项,它也可以将环境和相关资产复制到不同的 Virtualize 服务器,包括从 Docker 或其他容器技术动态供应的服务器。当添加“部署环境”构建步骤时,有几个新字段可用。
若要配置该构建步骤:
- 请从各自的下拉菜单中选择要提供的系统、环境和实例(并可以选择复制到新的 Virtualize 服务器)。
- 如果想在配置之前将环境和相关资产(虚拟资产、代理、JDBC 控制器等)复制到一个新的 Virtualize 服务器:
- 启用 Copy the environment and assets before provisioning 选项。
- (可选)为新环境指定名称。如果该字段为空,则将自动分配一个名称。您还可以使用变量,如
Env${BUILD_NUMBER}
- 指定目标 Virtualize 服务器。有关选择和配置可用选项的帮助,请参阅本过程下面的指导原则。
- 如果您正在复制一个环境,并且还希望在配置之前复制相关的数据资源库:
- 启用 Duplicate associated data repositories before provisioning 选项。
指定要复制数据资源库的位置。您可以配置以下选项:
在当前数据资源库服务器上 在资源库当前所在的数据资源库服务器上创建一个新副本。如果选择此选项,请指定数据资源库端口、用户名和密码。 对于与目标 Virtualize 服务器位于同一主机上的数据资源库服务器 在 Duplicate associated data repositories before provisioning 复选框上方区域中指定的目标 Virtualize 服务器上创建新副本。如果选择此选项,请指定数据资源库端口、用户名和密码。 对于特定主机上的数据资源库服务器 在指定的数据资源库上创建新的副本。如果选择此选项,请指定数据资源库主机、端口、用户名和密码。
- 如果希望在配置失败时停止作业,请启用 Abort on provisioning failure 选项。
在各种环境复制选项之间进行选择
该插件提供了三种不同的环境复制选项来满足不同的需求。第一个选项要求在作业执行时向环境管理器注册 Virtualize 服务器。第二个和第三个选项将等待注册虚拟服务器,因此当您通过 Docker 或其他容器技术动态部署虚拟服务器时,它是首选选项。
对于在 EM 中注册的 Virtualize 服务器 | 使用此选项可复制到已在环境管理器中注册的 Virtualize 服务器。 启用此选项并在 Virtualize 服务器下选择所需的服务器。如果该服务器在作业执行时没有向环境管理器注册,则作业将失败。 |
---|---|
对于匹配主机的 Virtualize 服务器 | 您可以配置构建步骤,以等待具有指定主机(IP)的 Virtualize 服务器,然后在该服务器向环境管理器注册之后执行复制操作。 如果 Virtualize 服务器还没有向环境管理器注册,例如,如果它将通过 Docker 或其他自动化进程启动,则使用此选项。 启用此选项并指定预期的主机 IP。 |
对于匹配名称的 Virtualize 服务器 | 您可以配置构建步骤,以等待具有 Virtualize 服务器名称的 Virtualize 服务器,然后在该服务器向环境管理器注册之后执行复制操作。 如果 Virtualize 服务器还没有向环境管理器注册,例如,如果它将通过 Docker 或其他自动化进程启动,则使用此选项。 启用此选项并指定预期的服务器名称(将用于向环境管理器注册的名称)。 |
当 Virtualize 服务器有一个动态 IP 时
只要 Virtualize 服务器具有一致的名称,您就可以配置构建步骤,使用指定的名称(例如,它用于向环境管理器注册的名称)复制到 Virtualize 服务器。如果命名的 Virtualize 服务器尚未在环境管理器中注册,构建步骤将等待它,然后在该服务器注册之后执行复制操作。
配置执行测试场景作业构建步骤
该构建步骤执行环境管理器连接实例上可用的一个测试场景作业(执行特定环境配置的测试套件)。还可以将测试执行结果发布到 DTP。
您可以配置以下选项:
- 启用 By name 以指定测试场景的名称,或启用 From list 并从下拉菜单选择测试场景。如果启用 By name 选项,则可使用 Jenkins 环境变量(如
${JOB_NAME}
)来使用与 Jenkins 作业相同的名称。 - 默认情况下,Abort the build on test failure 选项已禁用。如果想在测试失败时停止构建,请启用此选项。
- 启用 Abort the build if it's stuck 选项,并在 Timeout minutes 字段中指定 Jenkins 在作业超时前应等待的分钟数。
- 如果希望能够在 DTP 中查看结果,请启用 Publish test execution results to DTP 选项,并指定 DTP 项目、构建 ID和会话标记。
- 如果要在 SOAtest 发布到 DTP 时将执行环境设置(
exec.env
)包括在测试结果中,请启用 Append variable set environment to session tag if configured 选项。这样,您就可以根据执行环境汇总测试数据,这些数据可以显示在 DTP 小部件和报告中,例如:
有关项目、构建 ID、会话标签和其他与测试和开发工件相关元数据的更多信息,请参阅 DTP 文档。
配置销毁环境构建步骤
该构建步骤删除“脏”的测试环境,以确保后续测试总是以“干净”的测试环境开始。当添加“删除环境”构建步骤时,将显示两个新字段。
若要配置该构建步骤:
- 从包含要销毁的环境的系统下拉菜单中选择系统。
- 输入要销毁的环境的名称。您可以输入一个尚不存在的环境的名称(例如,一个将动态启动的环境)。您还可以使用变量,如
Env${BUILD_NUMBER}
配置一个断开连接的 Virtualize 服务器构建步骤
此构建步骤从环境管理器注销指定的 Virtualize 服务器。当添加“断开 Virtualize 服务器连接”构建步骤时,将显示两个新字段。
启用其中一个选项,并在提供用于断开 Virtualize 服务器的连接的字段中指定主机 IP 或服务器名。
检查构建步骤的进度和结果
若要查看正在进行的作业的控制台输出,请点击 Build History 区域中的进度栏。这将打开一个页面,其中包含状态详细信息和到相关环境管理器主机和环境的链接。若要查看已完成作业的详细信息,请使用 Build History 区域中的控制台输出下拉菜单。
更改日志
版本 | 变更 | FR/PR ID |
---|---|---|
2.18 | 测试方案执行工作超时功能 | CTP-4581 |
2.17 | Jenkins 的环境管理器插件中未出现 CTP 任务 | CTP-5648 |
2.16 | 添加能够在 Jenkins 的“控制台输出和状态”页面中显示作为任务一部分运行的 .tst 文件的名称和状态 | CTP-4550 |
2.15 | DTP 拒绝了带有附加 execEnv 的 CTP 任务的报告 | CTP-4766 |
2.14 | 使用 EM 插件的 Jenkins 任务处于运行状态 | CTP-4559 |
2.13 | 即使针对失败的 TST,生成状态页面也没有失败信息显示 | CTP-4549 |
2.12 | 提高动态部署控制台输出 | CTP-4540 |
2.11 | 处理任务中 SKIPPED 状态的 TST | CTP-4508 |
2.10 | 发布到 DTP 时可以选择将变量集环境附加到会话标签 | CTP-4394 |
2.9 | 测试场景任务失败后继续构建步骤的能力 | CTP-4307 |
2.8 | 将测试执行 XML 报告上传到 DTP | |
2.7 | 允许用户在 Parasoft 环境管理器插件中将 CTP 任务名称参数化为 Jenkins 环境变量 | CTP-3942 |
2.6 | 提高测试执行任务的 API 查询性能 | CTP-4082 |
2.5 | 修复构建步骤下拉菜单不能显示超过 100 个测试执行任务 | CTP-2841 |