单元测试中的序列化异常

2023-12-23

我的 Visual Studio (2010) 单元测试遇到问题。

每当出现问题并抛出一种类型的异常时,UnitTestAdapter 就会抛出 SerializationExceptions,告诉我他无法反序列化抛出的异常。

在我创建的单元测试中,这些大多是System.Data.SqlServerCe.SqlCeException or NHibernate.MappingException.

我不明白为什么会发生这种情况。研究告诉我,最常见的原因是这些类型所在的程序集对 UnitTestAdapter 不可用,但是当我查看 TestResults 文件夹时,我看到了所需的每个程序集,包括System.Data.SqlServerCe.dll and Nhibernate.dll.

那么 - 我可以做什么来调试这个?我需要查看测试结果中的异常,以便它们以任何方式有用。


跑步时Visual Studio 单元测试, VSTestHost是初始化并运行测试的过程。

A new 应用程序域被创建并且基目录应用程序域设置为单元测试"Out"包含运行测试所需的所有程序集和依赖项的目录。

测试目录名为“检测结果”并位于解决方案文件所在的同一目录中。内“检测结果”在每个测试运行的目录中,您都会找到一堆子目录。

一旦单元测试完成,执行线程将返回到默认值应用程序域为了VSTestHost过程。恢复默认的部分流程应用程序域是在调用上下文中反序列化对象。但是,BaseDirectory 已重置回包含该目录的目录VSTestHost可执行文件是"C:\Program Files\Microsoft Visual Studio {version}\Common7\IDE".

这会导致反序列化失败,因为在反序列化中找不到要反序列化的类型。VSTestHost目录。异常内容大致如下:

单元测试适配器引发异常:未解析成员“xxx,xxx, Version=2.0.3370.22002, Culture=neutral, PublicKeyToken=null”的类型

可能的破解方法是在“C:\Program Files\Microsoft Visual Studio {version}\Common7\IDE”中创建一个名为“UnitTestAssemblies”的目录。将所有必需的程序集复制到此目录中。然后手动编辑VSTestHost配置文件名为“VSTestHost.exe.config" 以包含作为其探测路径的一部分创建的目录:

<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
 <probing privatePath="PrivateAssemblies;PublicAssemblies;UnitTestAssemblies"/>
</assemblyBinding>

然后,这将强制查找在反序列化期间为任何丢失的类型创建的目录。

EDIT

由于似乎是程序集绑定问题,我建议您尝试程序集绑定日志查看器 (Fuslogvw.exe) http://msdn.microsoft.com/en-us/library/aa309346%28v=vs.71%29.aspx分析资源加载过程,所以我希望您能发现问题的神秘本质

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

单元测试中的序列化异常 的相关文章

  • ASP.NET MVC:这个业务逻辑应该放在哪里?

    我正在开发我的第一个真正的 MVC 应用程序 并尝试遵循一般的 OOP 最佳实践 我正在将控制器中的一些简单业务逻辑重构到我的域模型中 我最近一直在阅读一些内容 很明显我应该将逻辑放在域模型实体类中的某个位置 以避免出现 贫血域模型 反模式
  • .NET 中是否有内置函数可以对密码进行哈希处理?

    我看到这个问题加密 散列数据库中的纯文本密码 https stackoverflow com questions 287517 encrypting hashing plain text passwords in database 我知道我
  • 为什么当实例化新的游戏对象时,它没有向它们添加标签? [复制]

    这个问题在这里已经有答案了 using System Collections using System Collections Generic using UnityEngine public class Test MonoBehaviou
  • 如何从 appsettings.json 文件中的对象数组读取值

    我的 appsettings json 文件 StudentBirthdays Anne 01 11 2000 Peter 29 07 2001 Jane 15 10 2001 John Not Mentioned 我有一个单独的配置类 p
  • C#中如何移动PictureBox?

    我已经使用此代码来移动图片框pictureBox MouseMove event pictureBox Location new System Drawing Point e Location 但是当我尝试执行时 图片框闪烁并且无法识别确切
  • C++ OpenSSL 导出私钥

    到目前为止 我成功地使用了 SSL 但遇到了令人困惑的障碍 我生成了 RSA 密钥对 之前使用 PEM write bio RSAPrivateKey 来导出它们 然而 手册页声称该格式已经过时 实际上它看起来与通常的 PEM 格式不同 相
  • 工作流程系统中的单元/自动化测试

    您是否对像 K2 这样的复杂工作流程系统进行自动化测试 我们正在构建一个在 Sharepoint 2007 和 K2 之间进行广泛集成的系统 我什至无法想象从哪里开始自动化测试 因为工作流程涉及多个用户与 Sharepoint K2 工作流
  • 如何设计以 char* 指针作为类成员变量的类?

    首先我想介绍一下我的情况 我写了一些类 将 char 指针作为私有类成员 而且这个项目有 GUI 所以当单击按钮时 某些函数可能会执行多次 这些类是设计的单班在项目中 但是其中的某些函数可以执行多次 然后我发现我的项目存在内存泄漏 所以我想
  • IEnumerable 与 IReadOnlyList

    选择有什么区别IEnumerable
  • 什么时候虚拟继承是一个好的设计? [复制]

    这个问题在这里已经有答案了 EDIT3 请务必在回答之前清楚地了解我要问的内容 有 EDIT2 和很多评论 有 或曾经 有很多答案清楚地表明了对问题的误解 我知道这也是我的错 对此感到抱歉 嗨 我查看了有关虚拟继承的问题 class B p
  • 如何使用 C# / .Net 将文件列表从 AWS S3 下载到我的设备?

    我希望下载存储在 S3 中的多个图像 但目前如果我只能下载一个就足够了 我有对象路径的信息 当我运行以下代码时 出现此错误 遇到错误 消息 读取对象时 访问被拒绝 我首先做一个亚马逊S3客户端基于我的密钥和访问配置的对象连接到服务器 然后创
  • WPF/C# 将自定义对象列表数据绑定到列表框?

    我在将自定义对象列表的数据绑定到ListBox in WPF 这是自定义对象 public class FileItem public string Name get set public string Path get set 这是列表
  • 如何从两个不同的项目中获取文件夹的相对路径

    我有两个项目和一个共享库 用于从此文件夹加载图像 C MainProject Project1 Images 项目1的文件夹 C MainProject Project1 Files Bin x86 Debug 其中有project1 ex
  • cmake 将标头包含到每个源文件中

    其实我有一个简单的问题 但找不到答案 也许你可以给我指一个副本 所以 问题是 是否可以告诉 cmake 指示编译器在每个源文件的开头自动包含一些头文件 这样就不需要放置 include foo h 了 谢谢 CMake 没有针对此特定用例的
  • 如何将带有 IP 地址的连接字符串放入 web.config 文件中?

    我们当前在 web config 文件中使用以下连接字符串 add name DBConnectionString connectionString Data Source ourServer Initial Catalog ourDB P
  • 基于 OpenCV 边缘的物体检测 C++

    我有一个应用程序 我必须检测场景中某些项目的存在 这些项目可以旋转并稍微缩放 更大或更小 我尝试过使用关键点检测器 但它们不够快且不够准确 因此 我决定首先使用 Canny 或更快的边缘检测算法 检测模板和搜索区域中的边缘 然后匹配边缘以查
  • C# 模拟VolumeMute按下

    我得到以下代码来模拟音量静音按键 DllImport coredll dll SetLastError true static extern void keybd event byte bVk byte bScan int dwFlags
  • IEnumreable 动态和 lambda

    我想在 a 上使用 lambda 表达式IEnumerable
  • 如何将服务器服务连接到 Dynamics Online

    我正在修改内部管理应用程序以连接到我们的在线托管 Dynamics 2016 实例 根据一些在线教程 我一直在使用OrganizationServiceProxy out of Microsoft Xrm Sdk Client来自 SDK
  • 如何防止用户控件表单在 C# 中处理键盘输入(箭头键)

    我的用户控件包含其他可以选择的控件 我想实现使用箭头键导航子控件的方法 问题是家长控制拦截箭头键并使用它来滚动其视图什么是我想避免的事情 我想自己解决控制内容的导航问题 我如何控制由箭头键引起的标准行为 提前致谢 MTH 这通常是通过重写

随机推荐

  • 如何从 CXF/JAX-RS 中的 JSON 响应中删除命名空间前缀?

    我有 CXF 使用 JAX RS 创建的以下响应 ns1 CustomerInformationResponse xsi type ns1 CustomerInformationResponse ns2 code SUCCESS ns1 c
  • 如何更改函数引用的类型?

    Java8 允许我使用方法声明作为任何接口的实现 只要它只包含一个方法 然而 一旦定义 类型就不能更改 My code import java util function IntConsumer public class A interfa
  • boost::asio::yield_context:意外的forced_unwind异常

    我正在尝试为 boost asio 编写自定义异步函数 如下所述here https stackoverflow com questions 24497881 boostasiospawn yield as callback 但是我得到了
  • 如何在 Android 10 中从服务启动 Activity

    我从服务开始活动直到 android P 但是从 android10 谷歌保留了一项限制 即活动不能从后台启动 https developer android com guide components activities backgrou
  • 使用连接字符串时如何设置 knex 连接 ssl 选项

    当我使用连接字符串初始化 knex 时 如何将连接的 ssl 属性设置为 true 同样如何将debug设置为true 我通常会传入一个连接对象 但在这种情况下 我必须使用环境变量中的连接字符串 var database client pg
  • 检测页面上是否显示警报或确认

    有没有办法使用 JavaScript 或 jQuery 来检测是否显示确认框或警报框 如果您想在以下情况下运行一些代码alert 火灾 你可以尝试这样的事情 我只在 Chrome 中进行了测试 所以我不确定浏览器是否支持 Example h
  • C++ 不会安装在 Netbeans 11.0 中

    我是编程初学者 想了解更多关于 C 的知识 我安装了 Netbeans 因为它说它支持 Java 我目前正在学校学习基础知识 和 C 我想出于个人兴趣学习 但是当我尝试创建一个新项目时 我找不到C 所以我按照教程并最终尝试安装该插件 问题是
  • 什么时候在 ThreadPoolExecutor 中指定单独的核心和最大池大小是个好主意?

    我试图理解为 Java 5 的 ThreadPoolExecutor 指定单独的核心和最大池大小的要点 我的理解是 线程数只有在队列已满时才会增加 这似乎有点晚了 至少对于较大的队列 难道我不乐意为任务分配更多数量的线程 在这种情况下我可能
  • 迷失在 NSButton 类型和替代图像中

    我想要一个NSButton带有图像和备用图像 按下按钮时应显示备用图像 我还想通过代码显示备用图像 调用类似 button setSelected YES 这是否可能无需与alternateImage用手财产 无需手动更改按钮的图像即可实现
  • Java:使用 SAXParser 拆分大型 XML 文件

    我正在尝试使用java将一个大的XML文件分割成更小的文件SAXParser 特别是维基百科转储 未压缩时大约有 28GB 我有一个Pagehandler扩展的类DefaultHandler private class PageHandle
  • 在Python中对两个文本文件进行类似SQL的JOIN,有内置的方法吗?

    我必须执行的一项常见任务是对两个文本文件执行类似 SQL 的 JOIN 即 使用在它们之间共享的标识符列上的某种联接 从 左手 和 右手 文件创建一个新文件 有时需要诸如外连接等变化 当然 我可以编写一个简单的脚本来以通用方式执行此操作 但
  • 时间序列预测(最终使用Python)[关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 What algorithms exist for time series forecasting r
  • 使用 Perl 使用 sendmail 发送电子邮件

    我正在遵循以下示例这个网站 http www tutorialspoint com perl perl sending email htm使用 Perl 发送电子邮件 代码看起来像这样 my hostname hostname my thi
  • Prometheus 中的increase() 有时会将值加倍:如何避免?

    我发现对于某些图表 我从 Prometheus 获得双精度值 其中应该只是一个 我使用的查询 increase signups count 4m 刮擦间隔设置为建议最大 https stackoverflow com questions 4
  • Zend_Search_Lucene 与 SOLR

    我最近偶然发现了 Lucene 项目的 Zend Lucene 端口 我对 SOLR 有一点经验 所以我想知道它们两者之间有什么区别 特别是从性能和安装方面来看 据我所知 SOLR 需要在 Web 托管中运行 Tomcat serverle
  • XCode 调试器停止并在“停止”按钮上显示 SIGKILL

    我在 MacOS Lion 上使用 XCode 4 2 在模拟器中调试 iPhone iPad 应用程序时 我使用 XCode 工具栏上的 停止 按钮 产品 停止 来退出应用程序 此后 XCode 通常会打开 main m 文件 将执行指针
  • 如何获取DataTables中的页数

    我正在与数据表 http datatables net index我需要知道表当前包含的页数 这当然取决于每页的行数和总行数 并且可能会因用户操作而改变 有人知道如何访问这个值吗 我相信 iTotalPages 就是您所追求的 http d
  • 如何在 Julia 中将 Float64 矩阵转换为 RGB 通道矩阵?

    假设我有以下矩阵 img 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
  • 随机化字符串[重复]

    这个问题在这里已经有答案了 我是 C 新手 所以不要因为我的愚蠢而责怪我 我正在开发一个应用程序 该应用程序应该随机化一个单词并给出它的长度 例如您写一个单词 Line 它会给您 iLen 目前我确信只有这部分有效 private void
  • 单元测试中的序列化异常

    我的 Visual Studio 2010 单元测试遇到问题 每当出现问题并抛出一种类型的异常时 UnitTestAdapter 就会抛出 SerializationExceptions 告诉我他无法反序列化抛出的异常 在我创建的单元测试中