1

我正在尝试使用 PUT VERB 通过 REST API 更新 HP QC 缺陷。但是,它会告诉我由于“缺少必填字段”而无法更新缺陷。

我会理解该字段是否真的需要,但事实并非如此。我可以进入 QC,用我试图在脚本中更新它的值更新相同的缺陷,它工作得很好。

如果状态字段设置为延迟,则标记为“延迟原因”的“用户 03”是必填字段,当状态延迟时,您无法在没有延迟原因的情况下保存缺陷。

在这种情况下,状态设置为“已关闭”,因此此必填字段不适用于此工作流状态。但是,无论当前工作流状态如何,HP REST API 11 仍会让我为每个“潜在”必填字段提供一个值。

这是一个非常糟糕的设计。有没有解决的办法?我不想在这些字段中放置虚拟数据只是为了满足 HP API 的问题。

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<QCRestException><Id>qccore.required-field-missing</Id>
<Title>Missing required field: user-03 for entity defect</Title>
<ExceptionProperties/></QCRestException>
4

1 回答 1

0

HP 的 rest api 绕过了为所有这些目的配置的工作流/vbs。它高度依赖于我们每个项目的自定义元数据。

要克服您应该做的事情,请转到自定义 -> 项目实体 -> 实体 -> 自定义文件 -> user-03。将其标记为自定义的非必填字段。在工作流脚本中,您仍然可以将其设置为针对特定条件的强制性,以便从用户的角度来看它具有相同的行为,并且希望 rest 也将允许您在不指定此字段的情况下进行更新。

谢谢,

高拉夫

于 2015-09-04T05:00:20.863 回答