【发布时间】:2016-11-28 09:52:27
【问题描述】:
我有 2 个项目。一个是.Net Core Console App,一个是普通的单元测试项目。
我想从单元测试项目中添加对 .Net Core 应用程序的引用。
当我尝试添加对项目的引用时,我收到以下错误:
无法添加对“{0}”的引用。程序集必须具有“dll”或“exe”扩展名才能被引用。
当我在 bin 文件夹中添加对生成的 dll 的引用时,我可以编写测试而不会出现任何编译时错误,但测试不会显示在测试资源管理器中。
只要我删除对 dll 的引用,并注释掉依赖于该 dll 的任何代码,所有测试都会显示在测试资源管理器中。
我必须做些什么才能让我的测试显示在测试资源管理器中?
这是我在控制台应用程序中的 project.json:
{
"version": "1.0.0-*",
"buildOptions": {
"emitEntryPoint": true,
"allowUnsafe": true
},
"dependencies": {
"adremes.Data": "1.0.0",
"MailKit": "1.10.0",
"Microsoft.EntityFrameworkCore": "1.1.0",
"Microsoft.EntityFrameworkCore.Relational": "1.1.0",
"Microsoft.EntityFrameworkCore.SqlServer": "1.1.0",
"Microsoft.Extensions.Configuration": "1.1.0",
"Microsoft.Extensions.Configuration.FileExtensions": "1.1.0",
"Microsoft.Extensions.Configuration.Json": "1.1.0",
"Microsoft.NETCore.App": "1.1.0",
"Newtonsoft.Json": "9.0.1"
},
"frameworks": {
"netcoreapp1.0": {
"imports": "dnxcore50"
}
},
"runtimes": {
"win7-x64": {}
}
}
【问题讨论】:
-
为什么要在 .NET 4.6.2 中创建单元测试项目,而不是使用 net core 的单元测试工具? github.com/dotnet/docs/blob/master/docs/core/testing/…
标签: c# unit-testing .net-core