Tag: tfs2013

在TFS API中,如何获取给定测试的完整类名?

我手头有一个ITestCaseResult对象,我无法弄清楚如何从中提取Test Class信息。 该对象包含TestCaseTitle属性中的测试方法名称,但我们的代码库中有很多重复的标题,我想了解更多信息。 假设我有类Baz和方法ThisIsATestMethod Foo.Bar程序集,我目前只能从标题中访问ThisIsATestMethod信息,但我想获得Foo.Bar.Baz.ThisIsATestMethod 。 如何使用TFS API执行此操作? 这是一些精简代码: var def = buildServer.CreateBuildDetailSpec(teamProject.Name); def.MaxBuildsPerDefinition = 1; def.QueryOrder = BuildQueryOrder.FinishTimeDescending; def.DefinitionSpec.Name = buildDefinition.Name; def.Status = BuildStatus.Failed | BuildStatus.PartiallySucceeded | BuildStatus.Succeeded; var build = buildServer.QueryBuilds(def).Builds.SingleOrDefault(); if (build == null) return; var testRun = tms.GetTeamProject(teamProject.Name).TestRuns.ByBuild(build.Uri).SingleOrDefault(); if (testRun == null) return; foreach (var outcome in new[] { TestOutcome.Error, TestOutcome.Failed, […]

从TFS获取当前迭代路径

我正在尝试获取团队TFS项目的当前迭代路径。 我试图这样做的方法是使用http://blog.johnsworkshop.net/tfs11-api-reading-the-team-configuration-iterations-and-areas/上的博客。 我首先从以下代码获取团队配置: TfsTeamProjectCollection tpc = TFSConncetion(@”http://tfs/url”); var configSvc = tpc.GetService(); var configs = configSvc.GetTeamConfigurationsForUser(projectUri); 这个问题是我的配置总是空的,即使我是团队成员。 我很肯定我的项目URI也是正确的。 在此之后,我将获得团队设置并使用它来显示当前的迭代路径。 TeamSettings ts = config.TeamSettings; Console.WriteLine(ts.CurrentIterationPath); 即使这不起作用,我仍然可以从团队设置中查询迭代日期,以获得具有今天之前的开始日期和今天之后的完成日期的一次迭代。 主要的问题是当我尝试使用我的项目URI获取团队配置时,我无法让我的TeamSettingsConfigurationService返回任何空值。

如何在新的TeamFoundation 2013模板中获取Workspace对象

在新版本的TeamFoundation 2013默认构建模板中,缺少Workspace变量。 对于像ConvertWorkspaceItem这样的关键活动,它需要作为intput参数。 如何获取TfvcTemplate.12.xaml模板的当前工作空间? 我试过使用这个msdn线程,但它不适合我(返回null工作区名称)。 有什么建议?

如何使用tfs 2013与服务架构持续集成?

关于如何为VSTS和TFS 2015+创建构建定义以进行Service Fabric持续集成和部署,存在大量文档和示例。 在与TFS 2013集成以部署Service Fabric应用程序方面有哪些可用的方法? 我们如何将本地Service Fabric集群/应用程序/服务的构建和部署与TFS 2013集成?

如何初始化VersionControlServer类?

我想从TFS 2013下载文件。我找到了VersionControlServer类: msdn 但是如何初始化呢? VersionControlServer vs; vs.DownloadFile(repositoryPath,localPath); // vs not initialized! 谢谢!

如何通过代码在TFS工作项中设置’分配给’?

我试图通过代码创建一个工作项。 目前我使用以下代码将Assigned设置为。 wi.Fields[“System.AssignedTo”].Value = “TfsUser display name”; 目前我正在设置TFS用户显示名称。 我有疑虑。 TFS中的显示名称是唯一的吗? 如果不是如何设置像帐户名一样的唯一名称?

如何撤消未更改的文件的挂起更改?

让我对TFS感到疯狂的一件事是,如果您检出了一个文件,但没有对其进行任何更改,它仍会显示为更改,从而分散您对实际更改的注意力。 当您使用T4等工具生成代码时,这尤其令人讨厌,因为大多数情况下该工具将生成相同的代码,但会将文件签出。 由于某些我无法理解的原因,Visual Studio坚持将这些视为变更,如果另一个人碰巧签入相同的“更改”,甚至会声称存在冲突。 幸运的是,TFS Power Tools包含一个命令,用于将签出的文件与服务器版本进行比较,并撤消未更改的文件。 我将解释如何使用自定义工具将其集成到Visual Studio中。 遗憾的是,如果您使用的是Visual Studio 2017,则无法使用此function! 以前使用早期版本的Visual Studio完成此操作非常简单 : tfpt uu /noget /r * 如果没有任何更改,我们如何从挂起的更改中删除文件?

TFS 2013在构建/部署期间引发Lib2GitSharp错误(间歇性)

有一段时间了,我一直遇到Team Foundation Server构建/部署过程的问题,间歇性地抛出以下错误: Unhandled Exception: System.TypeInitializationException: The type initializer for ‘LibGit2Sharp.Core.NativeMethods’ threw an exception. —> System.BadImageFormatException: An attempt was made to load a program with an incorrect format. (Exception from HRESULT: 0x8007000B) at LibGit2Sharp.Core.NativeMethods.git_threads_init() at LibGit2Sharp.Core.NativeMethods.LibraryLifetimeObject..ctor() at LibGit2Sharp.Core.NativeMethods..cctor() — End of inner exception stack trace — at LibGit2Sharp.Core.NativeMethods.RemoveHandle() at LibGit2Sharp.Core.NativeMethods.LibraryLifetimeObject.Finalize() Exception Message: MSBuild error 255 […]

我应该安装哪个版本的VS以允许在构建服务器上进行unit testing?

几个星期后,我们有了第一个TFS(2013)设置。 设置相当小,只有少数(读取:10)开发人员暂时不得不使用它。 它被设置为“测试”,以确定它是否适合我们的组织。 现在,我们还想测试构建服务器function。 我们已经配置了构建服务器并启用了单个代理。 然后,MSDN声明“您必须在构建代理上安装您的团队在其开发机器上使用的Visual Studio版本。” ( http://msdn.microsoft.com/en-us/library/bb399135.aspx )。 这听起来非常简单,只需安装我们用于开发的Visual Studio版本(VS Premium 2013)。 然而,我们对可以发放的许可证数量非常紧张。 那么VS Express就足够了吗? 或者VS Premium是否真的需要进行自动化unit testing(MS测试,而不是NUnit)? 如果需要VS Premium,应该使用哪个许可证来激活它? 通过“哪个许可证”我的意思是,开发人员MSDN许可证会起作用吗? 我们有一个silverlight的MS合作伙伴关系,每个开发者都有自己的MSDN订阅者帐户。 免责声明:这是我的第一个问题,如果我违反了任何规则,请原谅。

如何通过API更改新创建的TFS工作项的工作流状态?

我正在创建一个工作项迁移应用程序,从“某事”到TFS 2013,我想让TFS工作项处于相应的工作流状态,就像在源系统中一样。 例如,如果源工作项处于“已关闭”状态,我希望它在TFS中处于“完成”状态。 我在本文中遵循了建议,建议将WorkItemStore对象的BypassRules属性设置为true ,以便能够设置CreatedDate字段。 我想,这同样适用于更改工作流状态,因为它还需要绕过规则。 所以,我尝试了以下方法: // obtain collection and authenticate towards it var collection = new TfsTeamProjectCollection(new Uri(_tfsUrl), cred); collection.Authenticate(); // get the work item store object var store = new WorkItemStore(collection, WorkItemStoreFlags.BypassRules); // creating the work item var workItem = new WorkItem(store.Projects[_tfsProjectName].WorkItemTypes[“Product Backlog Item”]); // setting some standard fields workItem.Title = “some […]