UnitTestIsolationException:在发布/调试模式下运行 Shims 测试时引发异常

2023-11-29

我正在尝试使用 Microsoft Shims 运行此单元测试,但它引发了异常Shims.Context.Create();方法。

环境:VS 2012、Win2K8 R2

namespace MyShimsUnitTest
{
    [TestClass]
    public class MyUnitTest
    {
        [TestMethod]
        public void GetCurrentYear()
        {
            using (Microsoft.QualityTools.Testing.Fakes.ShimsContext.Create())
            {
                // Some Logic...
            }
        }

    }
}

详细异常情况:

Result Message: 
Test method MyShimsUnitTest.MyUnitTest.GetCurrentYear threw exception: 
Microsoft.QualityTools.Testing.Fakes.UnitTestIsolation.UnitTestIsolationException: UnitTestIsolation instrumentation failed to initialize. Please restart Visual Studio and rerun this test
Result StackTrace:  
at Microsoft.QualityTools.Testing.Fakes.UnitTestIsolation.UnitTestIsolationRuntime.InitializeUnitTestIsolationInstrumentationProvider()
   at Microsoft.QualityTools.Testing.Fakes.Shims.ShimRuntime.CreateContext()
   at Microsoft.QualityTools.Testing.Fakes.ShimsContext.Create()
   at MyShimsUnitTest.MyUnitTest.GetCurrentYear()

填充程序需要由 IntelliTrace 分析器执行运行时检测。测试运行程序负责设置 CLR 加载探查器所需的环境变量,并提供探查器必须为 Shims 检测的类型列表。当 ShimRuntime 无法找到并附加到 IntelliTrace 探查器(它预计已由 CLR 加载)时,会引发 UnitTestIsolationException。

正如 Jin-Wook 之前提到的,当测试由未执行所需的分析器初始化的运行器执行时,就会出现此问题。测试资源管理器和 vstest.console.exe 是 Visual Studio 2012 附带的两个此类运行程序。此时,在“旧版”模式下运行测试时,Visual Studio 测试运行程序不会执行所需的探查器检测,当您使用为您的运行选择的 .TESTSETTINGS 文件或强制使用旧模式的 .RUNSETTINGS 文件。

您可以使用支持 Shims 所需的探查器检测的第三方测试运行程序。

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

UnitTestIsolationException:在发布/调试模式下运行 Shims 测试时引发异常 的相关文章

随机推荐

  • shell级别的PostgreSQL数据库逆向工程

    我碰巧用大型数据库做了一些调节工作 但我对此没有那么丰富的经验 所以我想明智的做法是在我的本地主机上创建类似的数据库 以免弄乱原始数据库 这是我的问题 是否可以生成SQL脚本将创建我想要的精确表 我的意思是在 MySQL GUI 工具上有这
  • 如何使用 Node.js 在 a 中使用通配符从目录中读取文件

    我需要使用 Node js 从目录中读取文件 文件名都是 json 如何在 Node js 中对文件名部分使用通配符 您可以使用glob npm用于使用通配符文件名模式匹配 var glob require glob options is
  • 如何在iOS SDK中创建一个伞形框架?

    我想在 iOS SDK 中创建一个伞形框架 我的要求是 我有一个名为 框架 A 的框架 我想创建另一个名为 框架 B 的框架 我想将 框架A 作为子框架添加到 框架B 中 用户只需在项目中导入 框架B 即可同时使用 框架A 和 框架B 换句
  • 子对象初始化的顺序是什么?

    让我们有一个对象o类的某种类型 其中包含成员子对象so and sso另一个类类型 考虑以下示例 include
  • 如何从 FiPy 中的 3D 变量中提取平面(3D 到 2D)

    我在 3D 网格上有一个变量 我正在尝试制定一个计划 我很惊讶这个问题以前没有被问过 它看起来是一个简单而常见的问题 但我还没有找到任何好的方法 我将不胜感激任何建议 假设我有一个 3x3x5 的平行六面体 并且我正在尝试提取 z 平面 f
  • 由于错误 80020101,无法完成操作。IE [重复]

    这个问题在这里已经有答案了 可能的重复 Ajax请求问题 错误80020101 我正在使用 JQuery 1 64 这是我重置计时器的代码 var message Logged in var myTimeout setTimeout tim
  • 如何将 IIS 服务器中的特定端口重定向到其他端口

    我的 URL 重写规则仅适用于 IIS 中的端口 80 重写适用于 http 本地主机 80 gt http 本地主机 8100 重写适用于 http localhost 80 重定向 gt http 本地主机 8100 重写不适用于 ht
  • 为无效迭代器定义了哪些操作?

    作为后续关于比较无效迭代器的问题 我试图在 C 标准中找到无效迭代器允许的表达式的定义 搜索 无效迭代器 仅在 24 2 1 11 中找到一个引用 它说无效的迭代器可能是 单一的 但仅说明取消引用它们可能是未定义的行为 没有给出进一步的语义
  • 使用 ASP.Net 教授初学者 Web 开发的小项目想法 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心以获得指导 我几周前就问过这个问题 如
  • 尝试将数据插入 Atlast 服务器上的集合时,命令失败并出现错误 8000 (AtlasError)

    我正在使用 mongoDB Atlas 创建一个 mongodb 一切似乎都很好 当我运行程序时 服务器连接成功 但是 当我尝试将数据插入集合时 它给出了错误 命令失败 错误 8000 AtlasError 我读到另一篇文章说我必须使用不同
  • 使用 JSF 的 Servlet 过滤器

    我尝试使用 JSF 配置 Servlet 过滤器 我在这里遇到很多问题 我也使用 PrimeFaces 这是我的 web xml
  • 如何在不root的情况下禁用Android设备的hdmi端口?

    我想知道是否有一种方法可以在不root的情况下禁用android设备的hdmi端口 从 Android 4 2 SDK 级别 17 开始 DisplayManager API http developer android com refer
  • 如何绑定一个List(一次或多次)?

    我遵循演示模型模式来编码一些屏幕 我把一些豆子储存在一个ArrayList 我将在一个列表中显示该列表的内容JTable 感谢一个AbstractTableModel 我也想展示some组合框中此列表中的记录 以表单形式 和其他一些在 JL
  • 如何检测触发器中的对象?

    我在场景中放置了一个带有触发器的对象 并且我希望控制台在我单击按钮时向我发送一条消息 检测玩家是否处于触发器内或不在触发器内 当我玩游戏时 它只会在玩家进入触发器时向我发送一条消息 Code using System Collections
  • NSNumber 计算和精度?

    两个简单的问题 如果可以的话 我应该如何获取两个 NSNumber 对象 执行计算并最终得到一个 NSNumber 的结果 NSNumber flux NSNumber alloc initWithDouble 100 0 NSNumber
  • 从隐藏的控制台应用程序显示表单

    我有一个运行控制台应用程序的主应用程序 控制台应用程序通常是隐藏启动的 ProcessWindowStyle Hidden 但出于测试目的 我可以使用显示的窗口来运行它 在控制台应用程序中 我可以加载和执行插件 其中一个插件尝试打开 Win
  • 为 HTML 表格行添加边框,

    是否可以为表格行加边框 tr 一次性而不是为单个单元格提供边框 td like table cellpadding 0 cellspacing 0 width 100 style border 1px tbody tr th style w
  • 如何在 OpenXML 段落、运行、文本中保留具有格式的字符串?

    我按照此结构将字符串中的文本添加到 OpenXML Runs 中 OpenXML Runs 是 Word 文档的一部分 该字符串具有新的行格式 甚至段落缩进 但是当文本插入到运行中时 这些都会被删除 我该如何保存它 Body body wo
  • 什么是 Angular 4?我可以从哪里了解更多相关信息?

    最近有人告诉我 Angular 4 它是什么 它与 Angular 2 有什么不同 我正在学习 Angular 2 我试图找到 Angular 4 的官方网站 但没有得到结果 我对此很好奇 EDIT Angular 4 网站现已推出here
  • UnitTestIsolationException:在发布/调试模式下运行 Shims 测试时引发异常

    我正在尝试使用 Microsoft Shims 运行此单元测试 但它引发了异常Shims Context Create 方法 环境 VS 2012 Win2K8 R2 namespace MyShimsUnitTest TestClass