我继承了一个项目,测试运行良好。今天,当我尝试在测试中使用这个类时,我创建了一个新类,xunit错误。
测试项目和应用程序都面向.NET Framework 4.6.1。
我在解决方案和测试项目上都做了清理和重建,但我仍然得到错误。
错误:
无法从程序集“MyApp,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = null”加载“MyNewClass”类型。
project.json:
"buildOptions": {
"warningsAsErrors": true
},
"testRunner": "xunit",
"dependencies": {
"xunit": "2.2.0-beta4-build3404",
"dotnet-test-xunit": "2.2.0-preview2-build1029",
"MyApp": "1.0.0-*",
"Microsoft.EntityFrameworkCore.InMemory": "1.0.0",
"NSubstitute": "1.9.2"
},
"frameworks": {
"net461": {
}
}
任何人都有任何想法如何解决这个问题?
答案 0 :(得分:1)
所以,我的问题是MyApp.dll没有得到更新/重新创建,即使在我进行了清理和重建之后。我不得不在MyApp \ test \ MyApp.Tests \ bin \ Debug \ net461 \ win7-x86
中删除文件(包括MyApp.dll)。答案 1 :(得分:0)
有时,无论出于何种原因,.NET Core
依赖关系恢复都无法按预期工作。我刚刚在我的计算机上尝试了project.json
并且它抱怨了xunit
版本,但是经过多次project.json
编辑后,它能够恢复所有依赖项,并成功运行测试
在以下情况下可能有所帮助:
dotnet restore
文件所在的文件夹中尝试dotnet build
和/或project.json
命令。project.json.lock
文件并尝试步骤#1。dotnet test
运行单元测试。我发现运行.NET Core
项目的这些命令更稳定,并提供比Visual Studio更好的错误输出以进行故障排除。
答案 2 :(得分:0)
我也有这个问题,可以解决这个问题,重新创建项目。
有时候,就像其他答案中指出的那样,事情只会停止正常运行,而最好的办法就是重新开始,重新启动程序,重新创建项目,重新启动机器...
这是Visual Studio,长叹...:)