visual-studio - mstest - 无法获得类型错误

标签 visual-studio mstest

使用“在解决方案中运行所有测试”或“运行已检查的测试”时出现以下错误,但如果我使用“调试已检查的测试”,它们运行良好。

无法获取类型 TestDataLayer.TestPatientDAO、TestDataLayer、Version=1.0.0.0、Culture=neutral、PublicKeyToken=null。错误:System.TypeLoadException:无法从程序集“DomainLayer,Version=1.0.0.0,Culture=neutral,PublicKeyToken=null”加载类型“DomainLayer.BaseEntity”。

DomainLayer.BaseEntity 是一个抽象类。

再次删除和添加对 DomainLayer 的引用没有帮助。

卸载和加载 TestDataLayer 或 DomainLayer 没有帮助。

编辑:
删除和添加 CodeCoverage 解决了问题(wtf)

最佳答案

添加作为答案以帮助其他人发现此问题的可能解决方案:

根据 myAces,我在 Visual Studio 2010 中运行 MSTest 单元测试时遇到 TypeLoadException。调试测试可以完美运行,通过 Resharper 测试运行测试可以完美通过。

和 myAces 一样,代码覆盖率 是问题所在。为了修复,我执行了以下操作:

测试菜单 -> 编辑测试设置 -> 本地

数据和诊断 -> 取消代码覆盖选项 -> 应用并关闭

然后将代码覆盖率重新应用于所需的程序集,一切正常。

关于visual-studio - mstest - 无法获得类型错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5780447/

相关文章:

c# - 带有通用控件的 UserControl - 在设计器中损坏

visual-studio-2010 - Visual Studio 2010 和 MSTest (C++/CLI) 的 GoogleMock 问题

c# - 如何测试抽象类的 protected 抽象方法?

visual-studio - Visual Studio 未正确运行已转换的配置文件

visual-studio - 发布到 Azure 时出现 gulp 错误

.net - 使用 MSBuild 脚本运行 MSTest 单元测试

visual-studio - Visual Studio 测试项目 - 不在部署时复制文件夹

c# - 从 C# 中删除数据库

c# - .NET 标准 : assembly's manifest definition does not match assembly reference

asp.net - IIS 如何知道哪些 DLL 用于 Visual Studio 项目