查找在TFS上更改严重性的错误

时间:2013-01-10 13:30:57

标签: tfs tfs2010

我需要找到TFS项目中的所有错误,在过去两周内严重性已更改为“高”。 我只能通过以下查询找到过去2周内打开的错误,其严重性为高:

<?xml version="1.0" encoding="utf-8"?>
<WorkItemQuery Version="1">
  <TeamFoundationServer>http://tfs-srv:8080/tfs/defaultcollection</TeamFoundationServer>
  <TeamProject>Project</TeamProject>
  <Wiql>SELECT [System.Id], [System.WorkItemType], [System.Title], [System.AssignedTo],[System.State] FROM WorkItems WHERE [System.TeamProject] = @project  AND  [System.WorkItemType] = 'Bug'  AND  [Microsoft.VSTS.Common.Severity] = 'High'  AND  [System.CreatedDate] &gt; @today - 14 ORDER BY [System.Id] </Wiql>
</WorkItemQuery>

2 个答案:

答案 0 :(得分:2)

我认为只需通过VS定义查询就可以做到这一点,因为它涉及比较两个工作项历史记录。

另一方面,可以直接查询TFS数据库以获取数据。尝试在TFS服务器上的TFSWarehouse数据库上运行此查询:

SELECT DATEDIFF(DD, H.System_ChangedDate, GETDATE()) as DaysAgo, H.System_Id, H.System_ChangedDate
, H.System_Rev, H2.System_Rev, H.Microsoft_VSTS_Common_Severity, H2.Microsoft_VSTS_Common_Severity
, 'X', H.*
FROM WorkItemHistoryView H INNER JOIN WorkItemHistoryView H2 ON H.System_Id = H2.System_Id 
                                                                AND H.System_Rev = H2.System_Rev + 1
                                                                AND H.Microsoft_VSTS_Common_Severity = 'High' 
                                                                AND H2.Microsoft_VSTS_Common_Severity = 'Low' 
                                                                AND H.System_ChangedDate BETWEEN DATEADD(dd, -14, GETDATE()) AND GETDATE()
                                                                AND H2.RecordCount = 1
WHERE H.ProjectNodeName = 'MyProject'
AND H.System_WorkItemType = 'Bug'
AND H.RecordCount = 1
ORDER BY H.System_Id ASC

答案 1 :(得分:0)

只需转到工作项类型........&gt;我的查询然后再创建一个新查询。 它是一个简单的用户界面,可让您轻松查询。你可以通过以下方式找到它 例如:

团队项目=您的项目

work itemn type = bug

严重性=高