首页 > 解决方案 > 测试不起作用... MSTest.TestAdapter & MSTest.TestFramework 与 TFS 2015 SP3 不兼容?

问题描述

背景:我们当前的解决方案使用 VS2019 和 .NET 4.7.2。我们使用 TFS 2015 SP3 并使用 MSTest V2 等运行大量(60 多个)构建运行单元测试。这些使用 MSTest.TestAdapter 和 TestFramework 直到 2.1.2。

因此,我正在使用典型解决方案中的新 MSTest V2 项目。我注意到 MSTest.TestAdapter 和 TestFramework nuget 包似乎不适用于 TFS 2015 SP3。在构建日志中,我确实看到以下错误:未找到测试。确保已安装的测试发现器和执行器、平台和框架版本设置正确,然后重试。

我不知道该怎么做才能让 2.2.3 包与 TFS 一起使用。如果我将这两个包降级到 2.1.2,测试将在 TFS 中运行良好。这只是 TFS 2015 太旧的一个例子吗?

鉴于 TFS 限制,我想尽可能保持最新状态。有没有办法让 TestAdapter 和 TestFramework 2.2.3(或未来版本)与 TFS 2015 SP3 一起使用?

提前致谢!

标签: unit-testingtfsmstest

解决方案


我设法弄清楚了。这就是我所做的。

  1. 卸载 MSTest.TestAdapter 和 MSTest.TestFramework nuget 包。
  2. 重新安装这些软件包的 2.1.2。签入。允许 CI 构建运行测试。都好。
  3. 将软件包升级到安装了大量依赖项的 2.2.3。签入。允许 CI 构建运行测试。无法运行测试。还需要一个包... TFS 需要 Microsoft.TestPlatform.ObjectModel。
  4. 通过 nuget 包管理器安装了 Microsoft.TestPlatform.ObjectModel 16.9.4。
  5. 签入。允许 CI 构建运行测试。测试运行。很好。

推荐阅读