【发布时间】:2018-11-19 22:28:56
【问题描述】:
我的组织拥有大量设置为在 MSTest V1 上运行的旧测试代码。在它们全部迁移到 MSTest V2 之前,任何人都不能使用 MSTest V2。
现在我遇到了一个意想不到的问题。我需要创建一个新的测试项目,但我找不到如何在 Visual Studio 2017 中创建一个新的 MSTest V1 项目的方法。
在 .NET Core 和 .NET Framework 中,它使用 MSTest V2 创建一个项目。当我手动尝试卸载 MSTest V2 NuGet 包并添加对 Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll 的引用时,似乎该 DLL 确实丢失了。
有没有办法让 MSTest V1 功能像这样工作?因为现有项目运行良好。
谢谢!
【问题讨论】:
-
“在它们全部迁移到 MSTest V2 之前,不允许任何人使用 MSTest V2。” 实际上,这意味着它永远不会发生。我发现最好的方法是通过在不同的框架中编写新的测试来逐步过渡。为获得最佳结果,您还应避免在单个项目中混合使用不同的框架,最近对 VS 2017 的更新打破了该工作流程。
-
我注意到编码的 UI 测试项目确实引用了
Microsoft.VisualStudio.QualityTools.UnitTestFramework。由于单元测试和编码的 ui 测试有点相关,您可以尝试从编码的 ui 测试项目开始。您还提到缺少 DLL。您是否检查了所有与测试(广义上)相关的组件是否已安装?您可以通过“Microsoft Visual Studio 安装程序”检查这一点。它位于 Windows 的“程序和功能”中。
标签: c# .net visual-studio-2017 mstest