部署 + 桌面应用程序 + TFS 2017

Posted

技术标签:

【中文标题】部署 + 桌面应用程序 + TFS 2017【英文标题】:Deploy + desktop application + TFS 2017 【发布时间】:2018-04-10 06:34:13 【问题描述】:

我有一个 winForm 应用程序。每次 CI/CD 发生时,我都想在服务器上安装它。后来,在我安装它之后(我也不知道如何自动安装。),我想在它上面运行 UI 测试。我应该在发布管理中添加什么任务?

我在研究时才发现 Web 部署。因为,我的是一个桌面应用程序,我需要不同的构建/发布任务。我可以从 vs2017 开始(通过右键单击项目 + 发布) 我想要来自 TFS 2017 的类似产品。

【问题讨论】:

【参考方案1】:

您可以尝试使用发布配置文件进行构建。见Publish profile。

在 TFS 中使用带有 MSBuild 参数的 VS 构建步骤,如下所示:

/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:PackageLocation="$(Build.StagingDirectory)\\" /p:PublishProfile="YourPbulishProfile"

您可以参考这篇文章:Using Web Deploy in Visual Studio Team Services Release Management


从 TFS 运行编码的 UI 测试。

首先,您需要以interactive process 的身份运行您的代理。关于如何在windows上部署代理,请参考this link。

其次,将您的编码 UI 测试项目添加到 TFS 版本控制中。

最后,创建一个构建定义以使用Visual Studio Test Agent Deployment 任务和Run Functional Tests 任务来运行测试。

参考以下文章:

Continuous integration, test, and deployment tutorial Deploy a Desktop App from TFS to VM for Coded UI Test.

【讨论】:

【参考方案2】:

我找到了一种将我的桌面应用程序发布到服务器的方法。下面是解释所需构建任务的文章。 Click here

【讨论】:

好吧,你可以Accept it as an Answer,这对阅读此主题的其他社区成员可能会有所帮助。

以上是关于部署 + 桌面应用程序 + TFS 2017的主要内容,如果未能解决你的问题,请参考以下文章

Microsoft Test Manager的测试影响分析功能是否适用于手动桌面应用程序测试

tfsbuild - TFS 构建定义 - 要部署的默认 Web 应用程序

TFS中构建服务器上的编码UI测试Windows应用程序

Windows 11 小技巧- WSL开启Linux桌面应用

公开课视频-《第01章 规划》-大企业云桌面部署实战-在线培训-视频(奉献)

如何使用 TFS 2017 部署到 Elastic Beanstalk?