问题标签 [pex-and-moles]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
unit-testing - 鼹鼠和 SharePoint 行为类型
我们在使用以下代码时遇到问题:
错误是:无法加载文件或程序集“System.Moles,Version=4.0.0.0,Culture=neutral,PublicKeyToken=0ae41878053f6703”或其依赖项之一。该系统找不到指定的文件。
我们尝试将源代码中的行为程序集重建为 .NET 4,但没有成功。我们使用的是 v0.94。
任何帮助将不胜感激。
moles - VS 2010 SP1 上的痣 0.94.51023.0 错误
我正在尝试使用 Moles 0.94.51023.0 在 VS 2010 SP1 中使用 System.ServiceModel v4 并不断收到以下错误: 名称空间 'ssm::System.ServiceModel.Channels 中不存在类型或名称空间名称'IHttpCookieContainerManager' ' (您是否缺少程序集参考?) [my-test-project.Test\obj\Debug\Moles\ssm\mgcsproj] my-test-project.Test\mgcs 293022 43
此接口似乎已从 .NET 4.0 中的 System.ServiceModel.dll 中删除,因为当我在对象浏览器中搜索时,我只能在 System.ServiceModel.dll v2.0.5.0 (Silverlight) 中找到它。
我可以使用 moles.exe 通过 cmdline 重现这一点,并且我尝试更改 moles 文件以仅生成我指定的类型名称,但它似乎没有任何区别。在我升级到 VS2010 SP1 之前这工作正常,所以我怀疑这是一个错误,但任何帮助将不胜感激。
谢谢尼克
c# - Moling 一个类型,保持特定方法的原始行为
我正在使用 Microsoft Moles,并对以下主题感到好奇:
- 有什么方法可以设置类型的行为(例如未实现),但保留单个特定方法的原始行为?
我的意图是将要测试的方法(不知道从要测试的方法调用的方法)与其类完全隔离。
以下代码对我不起作用,因为 moles 已完全禁用,并且任何使用的子方法都使用其原始行为:
c# - 我可以对使用 Moles 创建的痣类型设定期望吗?
我不仅需要交换实现,还需要添加必要的检查以确保以正确的顺序调用某些方法。我可以想象像 Mole + Mock 这样的东西会给我这个选择。有人知道鼹鼠有这个功能吗?
这段代码应该会有所帮助:
c# - 在 Moles 下从 ReSharper 启动 xunit 测试
我的 xunit 测试运行良好;从 ReSharper 启动它们。现在我正在尝试将痣用于一些测试用例。我[Moles]
在测试中获得了我的属性,参考了 moles xunit 扩展,但它抱怨“Moles 要求测试在仪器化过程中”。我认为这意味着我需要通过 moles.runner.exe 或其他东西运行它。有没有办法将其设置为使用 ReSharper 启动它?
unit-testing - 安装后找不到痣
我已经安装了 Pex & moles 并尝试按照教程进行操作
但由于某种原因无法向测试项目添加新项目->痣
在那里找不到文件类型
我试过重装几次都不成功...
我能做些什么 ?
谢谢
担
.net - 调试测试时 Moles 测试成功完成,但选择“运行测试”时 moles 主机崩溃
我在 Visual Studio 2010 中运行一些 moles 测试时遇到问题。在测试夹具中,我有 4 个测试 - 当我在调试模式下运行它们时,它们都可以正常工作。
当我使用“运行测试”而不是“调试测试”运行它们时,特别失败并给出以下错误:
问题签名:
问题事件名称:CLR20r3
问题签名 01:microsoft.moles.vshost.x86.exe
问题签名 02:0.94.0.0
问题签名 03:4cc31915
问题签名 04:mscorlib
问题签名 05:4.0.0.0
问题签名 06:4d53693b
问题签名 07: 23d7
问题签名 08: 33
问题签名 09:System.AccessViolationException
操作系统版本:6.1.7600.2.0.0.272.7
区域设置 ID:1033
附加信息 1:0a9e
附加信息 2:0a9e372d3b4ad19135b953a78882e789
附加信息 3:0a9e
附加信息 4:0a9e372d3b4ad19135b953a78882e789
所有测试都涉及加载类型并动态创建实例,尽管失败的测试通过检查类的属性、将 xml 反序列化为类型的实例,然后将其用作参数来对类型进行一些额外的检查。类型的构造函数。
不知道为什么这会导致任何具体问题,但这是我唯一能够隔离的事情。
任何帮助将不胜感激。
编辑:
我最初提供了主机抛出的错误,这是VS测试运行器报告的错误:
测试适配器“MolesAgentAdapter”在运行测试“Create_Returns_Configuration_When_Configured_Rule_Specifies_Configuration_Data”时引发异常。无法从 IPC 端口读取:管道已结束。
visual-studio-2010 - Moles/VS2010 SP1 问题 - 错误 32,退出代码 -1002 使用 Moles 0.94.51023.0 构建 mstest
更新 6/20/2011 在收到此错误之前,我只能构建一次或两次测试项目。在解决此问题之前,痣对我来说是无法使用的。删除 obj/bin 和关闭/重新打开 Visual Studio 是不切实际的。
错误
错误 32 命令 ""C:\Program Files\Microsoft Moles\bin\moles.exe" @C:\src\qp\mvc3\Solution\QP.Tests.Moles\obj\Debug\Moles\moles.args" 退出代码-1002。QP.Tests.Moles
说明
试图将痣与 nunit 一起使用,但遇到了麻烦......所以我创建了一个新的 mstest 项目,只进行了一次测试。测试已构建,我能够调试到 SUT 并验证 HttpContext 包含预期的值。后续构建测试项目的尝试因上述原因而失败。
注意:我正在运行 resharper 6 EAP(我知道,我知道),但我已禁用它的 mstest runner。此外,这是一个构建错误。
我试过的
已尝试在测试项目中重建、清理和删除 obj/bin 目录。
编码
moles - 痣和绑定重定向
我的场景很常见,一个 nuget 包使用 V1.0,另一个使用 V1.1,所以我必须添加一个绑定重定向。但是,moles runner 似乎忽略了 App.config 和程序集配置文件中的绑定重定向。
要加载 App.config,我正在使用以下代码:How To Read UnitTest Project's App.Config From Test With HostType("Moles")
有任何想法吗?
好的,我花了一些时间,但我已经弄清楚如何模仿绑定重定向的行为。这是我为此做的代码。将此保留为 Wiki,以允许其他人改进此代码:
mocking - 有没有人让痣正常工作?
我试图找到关于如何使用痣隔离框架的一致描述,但在这个主题上没有找到太多。到目前为止,我做了以下事情:
- 从这里下载痣(x86 版本)。
- 安装它。
- 这里的人描述了如何将它与自定义库一起使用。所以我为我自己的图书馆添加了 moles 组件。重建后,程序集出现在参考资料中。
- 然后我尝试添加使用 .Moles 命名空间并构建项目,但失败并出现一堆错误。MDateTime 的示例也不起作用。MDateTime 只是没有任何方法。
- 考虑到这是让它工作的第 5 次失败尝试,我从系统中卸载了它。
所以问题是:痣对任何人都有效吗?如果是的话,你是怎么到那里的?我还应该安装 pex 以使其工作吗?如果我想通过 msbuild 脚本在构建服务器上使用它怎么办?我看到他们提到了对 msbuild 的支持,但是有没有人从 msbuild 中使用它的真正经验?
对我来说,在严肃的开发过程中使用它看起来很原始。也许有人有其他意见?
谢谢。