问题标签 [moq]

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.

0 投票
7 回答
46883 浏览

asp.net-mvc - 模拟 Asp.net-mvc 控制器上下文

所以控制器上下文取决于一些 asp.net 内部。有哪些方法可以干净地模拟这些以进行单元测试?当我只需要例如 Request.HttpMethod 返回“GET”时,似乎很容易用大量设置阻塞测试。

我在网上看到了一些例子/助手,但有些已经过时了。认为这将是保持最新和最伟大的好地方。

我正在使用最新版本的 rhino mocks

0 投票
2 回答
575 浏览

c# - Moqing一个界面

当我在谷歌搜索/阅读这个答案时,我想我也会在这里问。

我有一个类是 SDK 的包装器。该类接受一个 ILoader 对象并使用 ILoader 对象创建一个 ISBAObject,该 ISBAObject 被强制转换为一个 ISmallBusinessInstance 对象。我只是想用 Moq 来模拟这种行为。

编译器错误显示:错误 1 ​​'Moq.Language.IReturns.Returns(Microsoft.BusinessSolutions.SmallBusinessAccounting.Loader.ISbaObjects)' 的最佳重载方法匹配有一些无效参数

这里发生了什么?我希望 ISbaObjects 的 Mock 能够毫无问题地返回。

0 投票
2 回答
3145 浏览

c# - 模拟参数的属性更改 - 使用 Moq

我正在使用 Moq 来模拟我的存储库层,以便进行单元测试。

当数据库插入成功时,我的存储库层插入方法会更新我的实体的 Id 属性。

如何配置 moq 以在调用 Insert 方法时更新实体的 Id 属性?

存储库代码:-

单元测试:-

ContractService 类(WCF 服务合同)的实现片段。

如果这些信息可能有点缺乏,我深表歉意。我今天才开始学习起订量和模拟框架。交流

0 投票
4 回答
45543 浏览

c# - 最小起订量文档在哪里?

我在哪里可以找到 MOQ 的综合文档?我刚开始嘲笑,我很难理解它。我已经阅读了http://code.google.com/p/moq/wiki/QuickStart上的所有链接,但似乎找不到教程或温和的介绍。

我还简要地查看了 Rhino Mocks,但发现它非常令人困惑。


是的 - 我读过 Stephen Walthers 的文章 - 非常有帮助。我也浏览了链接。我似乎无法在http://www.bestechvideos.com/2008/06/08/dimecasts-net-introduction-to-mocking-with-moq 观看视频[断开链接]

具体来说,我试图确定是否从模拟类中引发了一个事件。我无法编译 QuickStarts 页面上的事件示例。在 google 组中,Daniel 解释说 CreateEventHandler 只能处理 type 的事件EventHandler<TEventArgs>,但即使这样我也无法编译代码。

更具体地说,我有一个实现INotifyChanged.

如何模拟课程以测试PropertyChanged事件是否被触发?我无法重写事件,public event EventHandler<PropertyChangedEventArgs>因为我收到此错误:

错误 1 ​​'CoreServices.Notifier' 没有实现接口成员 System.ComponentModel.INotifyPropertyChanged.PropertyChanged'。“CoreServices.Notifier.PropertyChanged”无法实现“System.ComponentModel.INotifyPropertyChanged.PropertyChanged”,因为它没有“System.ComponentModel.PropertyChangedEventHandler”的匹配返回类型。

0 投票
2 回答
2098 浏览

.net - 起订量 - 好的示例应用程序

我知道有几个关于起订量教程的问题。但我想知道是否有任何示例应用程序在使用 ado.net 的 n 层业务应用程序的上下文中使用 moq。

我觉得 tutes 很好,但它们似乎并没有把所有东西都放在一起。因此,我正在寻找一个能够将全貌结合在一起的示例应用程序。

另外,我认为缺少专门处理模拟和测试数据访问层中的逻辑的示例。

干杯安东尼

0 投票
5 回答
2317 浏览

unit-testing - 最小起订量期望 IRepository 传递表达式

我正在使用此代码来验证我正在测试的方法的行为:

_repository 定义为:

当我的测试运行时,我得到这个异常:

不支持表达式 t => (t.STATUS_CD = "A")。

如果我不能将表达式传递给 Expect 方法,有人可以告诉我如何测试这种行为吗?

谢谢!!

0 投票
1 回答
1787 浏览

c# - 模拟 COM 对象

我一直在为只能获取和返回字符串的 COM 对象开发一个包装器。COM 对象的接口如下所示:

现在我已经制作了包含如下基本功能的类:

现在我想对这些类进行单元测试,而不必每次都创建真正的 COM 对象,设置世界然后运行测试。所以我一直在研究使用模拟对象,但我对在这种情况下如何使用模拟有点困惑。

我打算使用起订量,所以我这样写了这个测试:

这是模拟我的 COM 对象的正确方法吗?发送到 eval 函数的字符串如何正确?还是我做错了?

0 投票
2 回答
2092 浏览

c# - 起订量多接口问题

这可能是也可能不是多接口问题,但我正在做这样的事情:

在运行时的 DoSomething 行上,我得到:

MyTest (TestFixtureSetUp): System.Reflection.TargetInvocationException : 调用目标引发了异常。

----> System.TypeInitializationException : 'IInterface1Proxy184f83d417624e05b450fa40c2c5d35c' 的类型初始化程序引发了异常。

----> System.BadImageFormatException : 试图加载格式不正确的程序。(来自 HRESULT 的异常:0x8007000B)

这是否与我没有正确的 Expect 代码有关,还是与我的 mock 中的多个接口或其他原因有关?

0 投票
3 回答
47545 浏览

c# - 如何在单元测试中使用 Mock Objects 并仍然使用代码覆盖率?

目前我开始将 Mock 对象的概念引入到我的单元测试中。特别是我正在使用 Moq 框架。然而,我注意到的一件事是,我正在使用这个框架测试的类突然显示代码覆盖率为 0%。

现在我明白了,因为我只是在模拟这个类,它本身并没有运行实际的类......但是我如何编写这些测试并让代码覆盖率返回准确的结果?我是否必须编写一组使用 Mocks 的测试和一组直接实例化类。

也许我在没有意识到的情况下做错了什么?

这是我尝试对名为“MyClass”的类进行单元测试的示例:

有谁知道我应该做些什么不同的事情?

0 投票
5 回答
30054 浏览

c# - 如何最小起订量索引属性

我试图模拟对索引属性的调用。即我想起订量以下:

以及设置器值

我这样做是因为我需要模拟我的应用程序使用的类的功能。

有谁知道如何用最小起订量做到这一点?我尝试了以下变体:

但这不编译。

我想通过最小起订量实现什么,有人有我如何做到这一点的例子吗?