Visual studio 2010 如何从Team Foundation服务器删除测试用例 您如何从Team Foundation服务器删除测试用例?我采取了以下措施: 我首先安装了Team Foundation Server Power工具。p>

Visual studio 2010 如何从Team Foundation服务器删除测试用例 您如何从Team Foundation服务器删除测试用例?我采取了以下措施: 我首先安装了Team Foundation Server Power工具。p>,visual-studio-2010,tfs,Visual Studio 2010,Tfs,第二,我在VS命令窗口中输入了以下内容:witadmin destrowhi/collection:server name/id:test case id 我从VS命令提示符收到以下错误消息:命令witadmin无效 我甚至尝试以普通用户的身份在windows命令提示符下运行此命令,并选择以管理员身份运行,但是,在每种情况下,我都会收到相同的错误消息,说明命令witadmin无效…witadmin不是TFS Power Tools的一部分,应该可以从Visual Studio和团队资源管理器默认

第二,我在VS命令窗口中输入了以下内容:witadmin destrowhi/collection:server name/id:test case id

我从VS命令提示符收到以下错误消息:命令witadmin无效


我甚至尝试以普通用户的身份在windows命令提示符下运行此命令,并选择以管理员身份运行,但是,在每种情况下,我都会收到相同的错误消息,说明命令witadmin无效…

witadmin不是TFS Power Tools的一部分,应该可以从Visual Studio和团队资源管理器默认安装的Visual Studio命令提示符处获得

如果由于任何原因它不可用,您应该能够在c:\Program Files x86\Microsoft Visual Studio 10.0\Common7\IDE中找到它,或者在其他地方安装Visual Studio的情况下,可以在等效路径中找到它

参数名称和参数本身之间不应存在任何空格,可以通过使用逗号分隔来指定多个ID:

witadmin destroywi /collection:host\collection /id:3,5,7
编辑以包含OP中的新需求

如果在确定要销毁哪些工作项时需要更大的灵活性,那么应该求助于Team Foundation的客户端API。在下面的示例中,我创建了一个控制台应用程序,它接收两个参数:团队项目的名称和WIQL查询:

using System;
using System.Linq;
using Microsoft.TeamFoundation.WorkItemTracking.Client;

namespace DelWi {
    class Program {
        static void Main(string[] args) {
            var store = new WorkItemStore(args[0]);
            WorkItemCollection workItems = store.Query(args[1]);
            if (workItems.Count == 0) {
                Console.WriteLine("No work items with the specified criteria.");
            }
            var query = from workItem in workItems.Cast<WorkItem>()
                        select workItem.Id;
            foreach (var item in store.DestroyWorkItems(query)) {
                Console.WriteLine("{0}\t{1}", item.Id, item.Exception.Message);
            }
            Console.WriteLine("Press any key to continue...");
            Console.Read();
        }
    }
}
编译后,您可以通过以下参数调用它:

DelWi.exe "host\defaultcollection" "SELECT * FROM WorkItems WHERE [System.TeamProject] = 'The Best Team Project Ever'  AND  [System.WorkItemType] = 'Test Case'  AND  [System.Id] > 34  AND  [System.Id] < 37"

但是要小心,因为如果没有正确指定查询,您可能会删除更多的工作项。

witadmin不是TFS Power Tools的一部分,应该可以从Visual Studio和团队资源管理器默认安装的Visual Studio命令提示符处获得

如果由于任何原因它不可用,您应该能够在c:\Program Files x86\Microsoft Visual Studio 10.0\Common7\IDE中找到它,或者在其他地方安装Visual Studio的情况下,可以在等效路径中找到它

参数名称和参数本身之间不应存在任何空格,可以通过使用逗号分隔来指定多个ID:

witadmin destroywi /collection:host\collection /id:3,5,7
编辑以包含OP中的新需求

如果在确定要销毁哪些工作项时需要更大的灵活性,那么应该求助于Team Foundation的客户端API。在下面的示例中,我创建了一个控制台应用程序,它接收两个参数:团队项目的名称和WIQL查询:

using System;
using System.Linq;
using Microsoft.TeamFoundation.WorkItemTracking.Client;

namespace DelWi {
    class Program {
        static void Main(string[] args) {
            var store = new WorkItemStore(args[0]);
            WorkItemCollection workItems = store.Query(args[1]);
            if (workItems.Count == 0) {
                Console.WriteLine("No work items with the specified criteria.");
            }
            var query = from workItem in workItems.Cast<WorkItem>()
                        select workItem.Id;
            foreach (var item in store.DestroyWorkItems(query)) {
                Console.WriteLine("{0}\t{1}", item.Id, item.Exception.Message);
            }
            Console.WriteLine("Press any key to continue...");
            Console.Read();
        }
    }
}
编译后,您可以通过以下参数调用它:

DelWi.exe "host\defaultcollection" "SELECT * FROM WorkItems WHERE [System.TeamProject] = 'The Best Team Project Ever'  AND  [System.WorkItemType] = 'Test Case'  AND  [System.Id] > 34  AND  [System.Id] < 37"

但是要小心,因为如果您没有正确指定查询,您可能会删除比您想要的更多的工作项。

这是您尝试运行witadmin时显示的确切消息吗?你能发布一个屏幕截图吗?添加了一个控制台应用程序的示例,该应用程序可以根据WIQL查询删除工作项。当你尝试运行witadmin时,会显示确切的消息吗?您可以发布屏幕截图吗?添加了一个控制台应用程序的示例,该应用程序可以基于WIQL查询删除工作项。是否有任何方法可以一次从命令提示符或VS中删除多个测试用例?是的,您可以指定多个ID,这些ID由逗号分隔,不带空格。更多信息请拨打witadmin destroy wi/?抱歉,我应该更具体一点。您知道一种删除大量测试用例而不必指定每个独立测试用例(即从100到200)的方法吗?我们有400多个需要去…witadmin不支持指定id间隔。您可以通过使用WorkItemStore.DestroyWorkItems(如中所述)的代码实现您试图实现的目标。是否有任何方法可以从命令提示符或VS中一次删除多个测试用例?是的,您可以指定多个ID,这些ID由逗号分隔,不带空格。更多信息请拨打witadmin destroy wi/?抱歉,我应该更具体一点。您知道一种删除大量测试用例而不必指定每个独立测试用例(即从100到200)的方法吗?我们有400多个需要去…witadmin不支持指定id间隔。您可以通过使用WorkItemStore.DestroyWorkItems(如中所述)的代码来实现您试图实现的目标