Visual Studio 2017 的 TFS 2015 中的 VSTest 配置

VSTest configuration in TFS 2015 for Visual Studio 2017

我在将 TFS 2015 vNext 构建定义中的 VSTest 任务配置为 运行 和 Visual Studio 2017 时遇到问题。

在 VSTest 版本下拉列表中选择 "Latest" 不适用于 VS2017。我在论坛中发现了一些描述提供 VSTest 的特定位置的帖子,这可能会起作用。不幸的是,我没有这个选项:

VSTest Options

有人知道如何让它工作吗?

此致, WH邦尼

在TFS 2017的Visual Studio测试任务中,可以选择vstest.console.exe的具体位置。在 TFS 2015 中,Visual Studio 测试步骤是旧版本。您可以升级到 TFS 2017 以在 Visual Studio 测试步骤中指定测试版本。

或者作为解决方法,最新版本步骤的源代码位于此站点:https://github.com/Microsoft/vsts-tasks/tree/master/Tasks/VsTest。您可以下载源代码并将其作为自定义生成任务上传到 TFS 2015。

您可以使用 tfx-cli command 上传自定义任务。对于 TFS 2015,上传前使用 tfx login --auth-type basic 登录。

I am having problems configuring VSTest task in TFS 2015 vNext build definition to run with Visual Studio 2017.

你没有说具体问题是什么,但我 运行 遇到的问题是 Visual Studio 测试任务使用的是较旧的 VSTest 版本(来自 Visual Studio 2015在我的例子中)默认情况下没有检测我的测试项目中的单元测试,该项目使用较新的 .NET Core project format along with the MSTest.TestAdapter NuGet 包。

我找到的解决方案是在 Visual Studio 测试任务的 "Advanced Execution Options" 部分下将 "Path to Custom Test Adapters" 设置为 $(Build.SourcesDirectory) 以便它可以找到 MSTest.TestAdapter 程序集最终出现在 bin 目录中。