【发布时间】:2018-07-12 23:19:10
【问题描述】:
我开始使用 Visual Studio 2017 Enterprise 进行测试驱动开发,但无法(无论我多么努力)让它发挥作用。我曾尝试在 WWW 上到处寻找解决方案,但无济于事。所以我希望这里的人能够提供帮助。问题如下:
我创建了一个 ASP.NET Core Web 应用程序和一个单独的测试项目;我使用 NUnit 作为测试框架(我第一次使用 xUnit,但由于某种原因,测试消失了并且无法运行)。无论如何,当我尝试从测试项目中引用我的 ASP.NET Core Web 应用程序时,会出现以下错误:
项目“..\MyProject\MyProject.csproj”以“netcoreapp2.1”为目标。它不能被以 '.NETFramework,Version=v4.7' 为目标的项目引用。单元测试项目1
有没有人知道什么地方出了问题以及如何解决?任何帮助将不胜感激。
最好的问候。
编辑
我在这里详细阐述了这个问题。我试着在下面说明它。我附上了 3 张图片来说明我的意思。
首先,当我想在 Visual Studio 中创建一个测试项目时,我转到“测试”模板 - 在那里我只看到图 1 所示的模板。 1 - 我可以在不同的 .NET 版本之间进行选择,如下拉列表中所示。不管我选择了哪一个,我都收到了我之前帖子中提到的错误。
然后,我尝试使用 .NET Core 模板,在其中发现了 2 种类型的测试项目:MSTest 和 xUnit 测试(见图 2)。 MSTest 在我的情况下不可用,因为它对于这个确切的应用程序有点太有限了。因此,我尝试使用 xUnit 测试项目。但是,当我这样做时,系统会抱怨缺少各种库,并且在查看解决方案资源管理器中的“依赖项”部分时,所有库都显示有一个黄色的“警告”三角形(见图 3) ,并且根本没有编译。
所以我有点卡住了。有什么想法吗?
【问题讨论】:
标签: unit-testing visual-studio-2017 tdd asp.net-core-2.0 .net-4.7.1