本主题描述如何通过使用基于 Eclipse 技术的 Rational® ClearQuest® Designer 来将 Rational ClearQuest OSLCLink 软件包 V1.0
或 1.1 应用到您的模式中。
关于此任务
如果您运行的是 ClearQuest V7.1.2,请应用 OSLCLink 软件包 V1.0。如果您运行的是 ClearQuest V7.1.2.1,请应用 OSLCLink 软件包 V1.1。
过程
- 在 ClearQuest Designer 中,右键单击要将软件包应用到的模式版本,然后选择。这会打开“软件包向导”。
- 展开软件包列表中的 OSLCLink 节点,然后选择 V1.0 或 1.1。单击下一步。
- 选择要将软件包应用到的记录类型。
- 可选:如果您应用了 OSLCLink 软件包 V1.1,并且希望使用状态谓词支持将 ClearQuest 状态映射到 OSLC 状态,那么必须添加名为 OSLC_CQ_State_Mapping 的全局 Perl 脚本并提供一个实现:
- 浏览至与模式关联的,右键单击并选择添加。
- 在挂钩名称字段中输入以下文本,然后单击确定: OSLC_CQ_State_Mapping
- 将挂钩代码添加到 OSLC_CQ_State_Mapping 脚本。
- 单击完成。
OSLCLink 软件包将应用到所选的模式中。通过在模式中查看新的 OSLCLink 无状态记录类型来验证软件包的安装。
有关应用软件包的更多信息,请参阅应用软件包帮助。
示例
本部分提供将 OSLCLink 软件包 V1.1 应用到 DefectTracking 模式并针对“缺陷”记录类型启用该软件包的示例。
- 在 ClearQuest Designer 中,右键单击要将软件包应用到的模式版本,然后选择。这会打开“软件包向导”。
- 展开软件包列表中的 OSLCLink 节点,选择 V1.1,然后单击下一步。
- 针对“缺陷”记录类型启用 OSLCLink 软件包。
- 添加名为 OSLC_CQ_State_Mapping 的全局 Perl 脚本并提供一个实现。
- 浏览至与模式关联的,右键单击并选择添加。
- 在挂钩名称字段中输入以下文本,然后单击确定:OSLC_CQ_State_Mapping
- 将挂钩代码添加到 OSLC_CQ_State_Mapping 脚本。例如:
sub OSLC_CQ_State_Mapping {
my ($myentity, $hook_type) = @_;
my $state = $myentity->GetFieldStringValue("State");
if ($hook_type eq "Validation") {
if (($state eq "Assigned") || ($state eq "Opened")) {
$myentity->SetFieldValue("oslc_cm-inprogress", "1");
} else {
$myentity->SetFieldValue("oslc_cm-inprogress", "0");
}
if ($state eq "Closed") {
$myentity->SetFieldValue("oslc_cm-closed", "1");
} else {
$myentity->SetFieldValue("oslc_cm-closed", "0");
}
}
}
“缺陷”记录的 OSLC_State_Predicates 操作的初始化和验证挂钩将调用该脚本。
该脚本具有两个参数:当前实体和挂钩类型。
根据您的需求,可依据挂钩类型参数的值添加不同代码。
该示例脚本显示验证挂钩。
- 单击完成。这会检入模式修订版。
- 升级用户数据库。
- 验证模式变更:
- 使用 ClearQuest 客户机登录用户数据库。
- 编辑“所有缺陷”查询并添加以下显示字段:oslc_cm-inprogress 和 oslc_cm-closed。
- 运行“所有缺陷”查询。
- 在状态为“已提交”的查询结果中选择一个缺陷。
- 关闭缺陷并验证 oslc_cm-closed 等于 1,并且名称前缀为 oslc_cm 的其他字段等于 0。
- 重新打开缺陷并验证 oslc_cm-inprogress 等于 1,并且名称前缀为 oslc_cm 的其他字段等于 0。