在Team foundation服务器错误工作项中强制执行重复链接

时间:2009-05-20 06:48:10

标签: tfs tfs-workitem tfs-process-template

我们刚刚开始使用Team Foundation Server 2008 / Visual Studio Team System,我们很高兴地发现如何根据需要导出和修改工作项。然而,最后一件可以让我们完美设置的事情已经证明有点困难了:

我们已导出错误工作项类型 ,并对其进行了修改,以便以不同的方式显示给不同的用户组。但是,我们确实看到非开发人员报告错误的潜在问题,这些错误最终会重复。我们希望强制执行以解决原因关闭故障单的用户:复制还会创建指向该错误的链接,该错误被视为第一个错误报告。

我查看了System.RelatedLinkCount,并将规则

  <FIELD type="Integer" name="RelatedLinkCount" refname="System.RelatedLinkCount">
    <WHEN field="Microsoft.VSTS.Common.ResolvedReason" value="duplicate">
      <PROHIBITEDVALUES>
        <LISTITEM value="0" />
      </PROHIBITEDVALUES>
    </WHEN>
  </FIELD>

然而,当我尝试在该范围内放置任何内容时,导入器告诉我System.RelatedLinkCount不接受该规则,无论我放置什么,但上面的规则显示了我想要做的事情(即使最可取的规则也会检查我链接到的错误也不是重复的,尽管这有点过头了:P)

是否有其他人试图在工作项中强制执行此类规则?还有另一种解决同一问题的方法吗?我很感激有关此事的任何想法。

3 个答案:

答案 0 :(得分:1)

我不确定直接将此问题作为重复解决。即使你正在研究这个想法,也没有确认链接是否存在真正的错误。

您可能尝试的是编写一个报告,该报告验证任何已解决的错误都有一个相关链接转到另一个错误。让负责的团队成员每周检查一次此报告。一点善良的“责备和羞耻”对于保持项目清洁有很长的路要走。 ;)

答案 1 :(得分:0)

您可以通过创建一个“伙伴”字符串字段来完成此操作,该字段根据RelatedLinkCount设置其值,然后根据解析的原因对伙伴字段强制执行规则。

答案 2 :(得分:0)

在当前版本的TFS中,完全按照您的要求进行操作非常困难。 (2010年的高级链接使其更容易。)我相信您必须至少编写自己的链接类型,也可能是自定义字段控件。这些接口在MSDN上并没有很好地记录,尽管在第三方博客上确实存在例子。

最佳折衷解决方案IMO是创建一个名为“重复错误ID”的新整数字段。当错误转换为已解决状态且解决方案字段为“重复”时,此字段将变为必填字段。所有其他时间,它是只读的(默认为空)。这样,您捕获了所需的所有信息。缺点是:

  • “链接”不是双向的;无法从原始的bug中看出后来的一个人被骗了
  • 从欺骗导航到原始错误需要CTRL + G而不是双击

我认为这些对于满足90%剩余要求的快速解决方案来说是次要的。