项目中的每个测试都说“从实时单元测试中排除”?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了项目中的每个测试都说“从实时单元测试中排除”?相关的知识,希望对你有一定的参考价值。
我根据文档https://docs.microsoft.com/en-us/visualstudio/test/live-unit-testing-faq?view=vs-2017添加了测试适配器和框架包。
我在每个测试旁边看到“烧杯”符号\图标,但是悬停说它被排除在实时单元测试之外。
测试都运行良好手动,我尝试右键单击并告诉它包含但不执行任何操作。我这里没有代码手动排除任何东西......
.net 4.7.1项目
编辑
有一个错误
[10:03:48.205错误] [TestRunner 1]调用执行程序'executor:// mstestadapter / v2'时发生异常:无法加载文件或程序集'System.Xml.ReaderWriter,Version = 4.1.1.0,Culture = neutral ,PublicKeyToken = b03f5f7f11d50a3a'或其依赖项之一。该系统找不到指定的文件。无法加载文件或程序集'System.Xml.ReaderWriter,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'或其依赖项之一。该系统找不到指定的文件。
这是一个4.7.1项目测试另一个基于EFCore的4.7.1项目。
我得到了类似的相同错误,在“实时单元测试”类别的输出窗口中,我发现以下错误:
FatalError - System.AggregateException: One or more errors occurred. ---> System.Exception: Could not load file or assembly 'System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' or one of its dependencies. The system cannot find the file specified.
我下载了最新版本的nuget软件包并没有帮助,我基本上不得不强制配置文件中的4.0.0.0版本,因为dll的实际版本是4.1,所以没有多大意义。 2.0。无论如何,在此之后我停止并启动了Live Unit Testing,现在它可以毫无问题地工作。希望这可以帮助。
<assemblyIdentity name="System.Runtime" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" /> <bindingRedirect oldVersion="0.0.0.0-4.1.2.0" newVersion="4.0.0.0" />
"Could not load file or assembly"
可能有不同的原因:错误的程序集引用或错误的程序集重定向。
- 在第一种情况下,您可以添加程序集重定向(FabianVal的答案)
[0] https://docs.microsoft.com/en-us/dotnet/framework/configure-apps/redirect-assembly-versions
- 在第二种情况下,您可以更正或删除重定向。我在
update-package -reinstall
之后引入了错误的重定向,我不得不通过删除错误的重定向来重新编写csproj文件。
快速的grep可能有助于找到罪魁祸首:get-childitem -recurse *csproj | select-string -patte
rn "System.Runtime, Version=4.0.0.0"
以上是关于项目中的每个测试都说“从实时单元测试中排除”?的主要内容,如果未能解决你的问题,请参考以下文章