TFS Assign Work Item By STATE ...有条件

TFS Assign Work Item By STATE ... with conditions

我们的 TFS 当前设置为在项目从 Active 变为 Resolved[= 时将工作项目分配给我们的测试人员(通过容量规划角色) 27=] state.

这很好,但还不够。当测试人员将项目从 Resolved 移动到 Closed(已测试和验证已修复)或 Active(测试失败)我想将项目 back 重新分配给最近将其从 Active 转换为 Resolved 的人.

这样,当缺陷被关闭时,修复它的人仍然与它相关联(为你的工作赢得荣誉),或者如果你没有通过测试,它会被重新分配给将要重新做的人作品。

如何做到这一点?

可能有解决你问题的方法,但我知道你不需要它只是为了看到这个人会与之相关联。

这是因为如果您在右窗格中看到,当有人签入该工作项的代码,或对其进行更改并保存工作项时,TFS 会自动在箭头中连续显示步骤已完成,由谁完成,日期

并在测试失败后。签入代码或尝试解决该问题的开发人员可以 select 分配

下拉列表中的开发人员姓名

我猜你几乎想要和我说的一样,但如果不原谅我。

谢谢,

是的,可以达到你的要求。

  1. Automatically change AssignedTo field to a user when State field changes from Active to Resolved.

假设您已经安装了 TFS Power Tool。您可以通过 向此转换添加 AssignedTo 字段和规则来修改从活动到已解决的转换(我的示例是从待办事项到进行中):

XML 文件应该是这样的:

<Transition from="To Do" to="In Progress">
  <ACTIONS>
    <ACTION value="Microsoft.VSTS.Actions.StartWork" />
  </ACTIONS>
  <REASONS>
    <DEFAULTREASON value="Work started" />
  </REASONS>
  <FIELDS>
    <FIELD refname="System.AssignedTo">
      <DEFAULT from="value" value="{Tester}" />
    </FIELD>
  </FIELDS>
</Transition>

在我的例子中,当 State 从 To Do 变为 In Progress 时,AssignedTo 字段将变为 Tester。

  1. When the Tester changes State from Resolved to Active, the AssignedTo field will change back to whoever most recently change it from Active to Resolved.

首先,您需要自定义一个字段来获取ChangedBy值。在我的示例中,我自定义了一个名为 copy 的字段,XML 文件如下所示:

<FieldDefinition name="copy" refname="copy.copy" type="String">
  <COPY from="field" field="System.ChangedBy" />
</FieldDefinition>

然后,类似于上面的第1项,需要将Transition from Resolved to Active修改为(我的例子是从In Progress to To Do),XML文件如下:

<Transition from="In Progress" to="To Do">
  <ACTIONS>
    <ACTION value="Microsoft.VSTS.Actions.StopWork" />
  </ACTIONS>
  <REASONS>
    <DEFAULTREASON value="Work stopped" />
  </REASONS>
  <FIELDS>
    <FIELD refname="System.AssignedTo">
      <COPY from="field" field="copy.copy" />
    </FIELD>
  </FIELDS>
</Transition>

在我的示例中,当 State 从 In Progress 更改为 To Do 时,AssignedTo 字段将更改为最近更改它的用户。