使用 Jenkins 从 OpenText Application Quality Management 触发测试
本主题介绍如何运行保存在 OpenText Application Quality Management 中的 OpenText Functional Testing 测试。
先决条件:
在从 OpenText Application Quality Management 运行测试之前,您必须先设置集成。这是一次性设置,仅当您更改为其他版本时才需要重复此设置。
在 Jenkins Server 用于运行测试的计算机上,在通用模式下注册 ALM 客户端: 有关注册的详细信息,请参阅 OpenText Application Quality Management 帮助中心的“ALM 客户端 启动器”部分。
在极少数情况下,如果任何主要 ALM 组件被检测为未注册,您可以激活一种机制,在 Jenkins 作业执行期间自动重新注册这些库。使用以下格式在运行 Jenkins 代理的客户端计算机上创建系统环境变量:
名称: ALM_CLIENT_PATH
值: C:\ProgramData\HP\ALM-Client\<版本>
备注:
-
必须将“运行模式”设置为“本地运行”才能注册 ALM 组件。
-
必须以管理员身份启动 Jenkins 代理。
在 Jenkins 服务器上定义 ALM 凭据
定义 Jenkins 在运行保存在 OpenText Application Quality Management 中的 OpenText Functional Testing 测试时用来连接到 OpenText Application Quality Management 的 ALM 凭据。
从“凭据范围”下拉列表中选择以下凭据处理模式之一。
-
系统 (全局) 凭据: 在 Jenkins 配置页面上全局定义 ALM 凭据。
-
作业 (本地) 凭据: 在每个作业中定义 ALM 凭据。
从 ALM 测试集运行 OpenText Functional Testing 测试
使用 Jenkins 从 OpenText Application Quality Management 中的测试集运行服务器端无人值守的功能测试。ALM 测试集使您能够在 ALM 测试实验室模块中根据特定测试目标来组织测试执行。
备注: 不支持从 OpenText Application Quality Management 运行并行测试。
有关详细信息,请参阅 OpenText Application Quality Management 帮助中心。
配置 Jenkins 构建步骤以触发从 OpenText Application Quality Management 运行的测试集
-
在 Jenkins 作业中,向下滚动到“构建”部分,单击“添加构建步骤”,然后为自由风格项目选择“从 OpenText ALM 执行 OpenText 功能测试”。
备注: 对于管道,在“管道语法”页面中,从“示例步骤”下拉菜单中选择 runFromAlmBuilder,生成脚本,并将脚本复制到管道脚本框中。
-
选择已配置的 ALM 服务器之一,然后输入服务器凭据、项目和域。
根据 ALM 服务器所需的身份验证类型,凭据可以是用户名和密码或用于 SSO 身份验证的 API 密钥。
要使用 SSO 身份验证,请选择“启用 SSO”,然后输入从 ALM 站点管理员处获取的“客户端 ID”和“API 密钥”。
有关更多详细信息,请参阅在 Jenkins 服务器上定义 ALM 凭据。
备注: 如果您使用的是 ALM 计划程序,它将在 Jenkins 代理用户下运行。
例如,如果 Jenkins 以系统用户身份运行,则计划程序将以系统用户身份运行测试。这不会影响测试执行。
-
使用 ALM 路径添加测试集文件夹或要包含的特定测试集。
-
要添加特定测试,请在测试集路径后面添加测试名称。
-
要添加多个条目,请单击字段右侧的向下箭头,然后在单独的一行中输入每个项。
例如:
Root\testfolder1\testset_a
Root\testfolder1\testset_b
Root\testlab_folder
Root\testlab_folder\testset_a\test-name
备注: OpenText Application Quality Management 中的测试集按照文件夹级别顺序执行。
-
-
(可选) 指定要以下列方式之一使用的测试参数:
在“测试集”区域指定测试参数
在“测试集”区域中,使用以下语法:
<测试或测试集路径> "<参数名称>":"<字符串值>", "<参数名称>": <数值>
其中:
-
“<测试或测试集路径>”是测试或测试集的路径。
如果指定某个测试,则指定的参数仅用于该测试。
如果指定某个测试集,则指定的参数将用于该测试集中的所有测试。当该测试集运行时,每个测试将使用它所需的参数,而忽略任何其他参数。
-
“<参数名称>”是测试参数的名称
-
“<字符串值>”是参数的字符串值 (带引号)
-
“<数值>”是参数的数值 (不带引号)
例如:
TestSet\ "Country":"US", "Count": 3
TestSet2\ "Country":"UK"
TestFolder\Test1 "Country":"China", "Count": 4
在表中指定测试参数
-
选择“指定测试参数”。
-
在参数表中,指定测试编号以及参数的名称、值和类型。
测试编号表示在“测试集”区域中定义的测试的从 1 开始的顺序。定义测试编号后,测试路径会自动以只读模式填充。
指定 OpenText Functional Testing 中定义的参数名称。
-
单击“+ 参数”将更多参数添加到表。
备注:
-
建议在表中指定测试参数,而不是在“测试集”框中进行指定。第一种方法使您能够仅提供字符串或数字参数值,仅向后兼容功能支持此方法。
-
确保您配置的参数类型正确。否则,测试运行可能会由于参数类型不匹配而失败并显示错误状态。
-
指定测试所需的每个测试参数的值,或确保在 OpenText Functional Testing 或 OpenText Application Quality Management 中为参数定义了默认值。
-
您可以在表中定义类型为“密码”的 GUI 测试参数。有关如何对测试运行结果中的“密码”参数的值进行加密的信息,请参阅对测试运行结果中的密码进行编码。
-
-
(可选) 指示作业失败之前等待的超时 (以秒为单位)。
-
(可选) 为 ALM 测试集设置筛选,以指示 Jenkins 仅运行测试集中的部分测试。
选择“筛选 ALM 测试集”,然后筛选要按名称或/和状态运行的测试:
-
在“运行名称包含以下内容的测试”中,指定要在测试名称中查找的字符串。
- 在“运行具有以下状态的测试”中,指定要运行的测试的状态。例如,如果您不想重新运行已通过的测试,则不要选择“通过”状态。
-
-
单击“高级”以指示运行模式,如“本地”主机、“远程”主机或“计划的”主机。
备注:
-
如果指定远程主机模式,则还要指定主机名。此主机必须是一台安装了有效 OpenText Functional Testing 的计算机。
您可以配置 OpenText Functional Testing 计算机,以便 Jenkins 无需任何人手动登录计算机并启动 OpenText Functional Testing 即可运行测试。有关详细信息,请参阅在远程会话中运行 OpenText Functional Testing 和测试。
-
建议您从 ALM 实验室管理运行功能测试集。从 OpenText Application Quality Management 运行功能测试集时存在以下限制:
-
不支持功能测试集在“计划的”主机上运行。
-
在“本地”或“远程”主机上运行功能测试集时,只能获取每个测试的运行结果。
-
-
-
单击“应用”保存更改,然后继续执行更多构建步骤。添加构建步骤后,单击“保存”。
-
在“构建后操作”部分中,单击“添加构建后操作”,然后为自由风格项目选择“发布 OpenText 测试结果”。
备注: 对于管道,在“管道语法”页面中,从“示例步骤”下拉菜单中选择 publishMicroFocusTestResults,生成脚本,并将脚本复制到管道脚本框中。
-
像执行任何标准 Jenkins 作业一样运行或安排作业。
从 OpenText Application Quality Management 查看测试运行结果
- 在仪表板上,单击作业。
- 单击“控制台”链接以查看 ALM 信息。
- 将 ALM 链接复制到浏览器,并从 OpenText Application Quality Management 中查看测试集运行结果。
另请参见: