gpt4 book ai didi

nunit - 尝试在 NUnit 中使用 Moles。获取 "Moles requires tests to be an instrumented process"

转载 作者:行者123 更新时间:2023-12-04 22:16:36 25 4
gpt4 key购买 nike

我正在尝试将鼹鼠与 NUnit 一起使用,但出现以下错误“鼹鼠需要测试才能成为一个仪表过程”。我也在 Visual Studio 2008 中使用 Visual NUnit 来实现它。欢迎任何帮助。

最佳答案

这是我为了让 Moles 与 NUnit 一起工作而做的:

  • C:\Program Files (x86)\Microsoft Moles\Documentation\moles.samples.zip 处抓取存档并解压缩 Moles 解决方案文件夹。
  • 在 Visual Studio (2008) 中构建 NUnit 项目以供发布。
  • 将输出文件 Microsoft.Moles.NUnit.dllMicrosoft.Moles.NUnit.xml...\Moles\NUnit\bin\Release\ 复制到 C:\Program Files (x86)\NUnit 2.5.9\bin\net-2.0\addins\ 。我怀疑这一步重新编译 NUnit 插件而不是使用来自下载和安装的插件是实际的解决点。
  • 在您的 VS 测试项目中,确保添加对刚刚复制的 C:\Program Files (x86)\NUnit 2.5.9\bin\net-2.0\addins\Microsoft.Moles.NUnit.dll 的引用。
  • 在你的 VS 测试类中,用 [Moled] 属性标记一个测试方法(这将需要一个 using Microsoft.Moles.Framework.NUnit )。作为替代方案,将其实现包装在 using (MolesContext.Create()) { ... } 块中(这将需要 using Microsoft.Moles.Framework )。
  • 从命令行,使用以下命令通过鼹鼠运行器调用 NUnit 测试运行器: "C:\Program Files (x86)\Microsoft Moles\bin\moles.runner.exe" "path\to\your\test\assembly.dll" /r:"C:\Program Files (x86)\NUnit 2.5.9\bin\net-2.0\nunit-console.exe" /x86 /args:"/domain=None"

  • 我发现 [Moled] 属性 不能与 [TestCase(...)] 一起使用 并且它使您回到未检测的错误场景。相反, using (MolesContext.Create()) 块也适用于这种情况。

    一旦您发现一切正常,您可以考虑将 Moles runner 作为 Visual Studio 中的外部工具运行。按照 Running Moles using NUnit Console from Visual Studio 中的说明,按照步骤 6 更新参数。

    请注意,这是在装有 NUnit 2.5.9、Microsoft Pex 和 Moles (x86) 0.94.51006.1 的 Windows 7 64 位机器上进行的。考虑不同路径、版本等的实际文件夹。

    关于nunit - 尝试在 NUnit 中使用 Moles。获取 "Moles requires tests to be an instrumented process",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3815946/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com