unit-testing - 测试不起作用... 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 一起使用?
提前致谢!
解决方案
我设法弄清楚了。这就是我所做的。
- 卸载 MSTest.TestAdapter 和 MSTest.TestFramework nuget 包。
- 重新安装这些软件包的 2.1.2。签入。允许 CI 构建运行测试。都好。
- 将软件包升级到安装了大量依赖项的 2.2.3。签入。允许 CI 构建运行测试。无法运行测试。还需要一个包... TFS 需要 Microsoft.TestPlatform.ObjectModel。
- 通过 nuget 包管理器安装了 Microsoft.TestPlatform.ObjectModel 16.9.4。
- 签入。允许 CI 构建运行测试。测试运行。很好。
推荐阅读
- ios - xcode自定义键盘使用按钮进行快捷方式
- scala - Scala:如何知道哪个概率对应哪个类?
- scala - 如何根据数据集中一列中数组中存在的多个值在数据集中创建新行
- angular - Angular 身份验证在守卫之前等待在本地存储中设置权限
- erlang - 使用尾递归时出现无法解释的行为
- c# - 如何使用 vue js 传递和检索 id?
- npm - 无法从 Windows 上的本地 npm install 运行 gulp 或其他 npm 命令
- excel - 使用 ParamArray 时 ByRef 参数类型不匹配
- python - python根据子列表值重新排列列表中的元素
- angular - 如何重定向到 ngOnInit 中的新组件