问题标签 [rhino-mocks-3.5]
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.
c# - 如果在 RhinoMock 中断言失败,则打印 GetArgumentsForCallsMadeOne
假设我有一个使用 RhinoMock 的测试。我使用的是 AAA 方法,所以通常以
fooMock.AssertWasCalled(x=>x.Foo(bar))
如果断言失败,我通常会添加如下所示的行
fooMock.GetArgumentsForCallsMadeOn(x=>x.Foo(null)).PrintDump()
所以我可以看到在 mock 上做了什么调用(这很有帮助,因为通常问题是 mock 是用错误的参数调用的)。
有什么办法可以自动化这个过程吗?那么,如果断言失败,告诉 RhinoMock 打印调用是在 mock 的方法上进行的吗?
rhino - 使用 Rhino Mocks 存根受保护的抽象方法
我有一个受保护的抽象方法。反正我可以存根吗?基本上模板方法调用该抽象方法,我需要它来存根它。该方法不能公开,因为它会破坏封装。无论如何我可以使用 Rhino Mocks 来实现它。我正在使用 3.5 版本。谢谢。
.net - Rhino Mock,RedirectToRoute 后获取 TempData
如何在 Rhino Mock 测试中 RedirectToAction 后获取 TempData?
代码
测试
c# - 在 Rhino Mocks 框架中连接 2 个约束的确切语法是什么?
我在 Rhino 源代码中看到以下代码:
但在实践中,我可以使用| 或 || .
同样,&和&&的工作方式相同。
为什么会这样?
c# - 如何通过 RhinoMocks 中的指定条件从方法返回值?
如何使用 RhinoMocks 模拟以下行为?
被测方法调用接口上的 ReceivePayment 方法。
接口有 CashAccepted 事件。如果此事件已被多次调用(或通过某个条件),ReceivePayment 应返回 true。
如何完成这样的任务?
更新。
现在我执行以下操作:
StartCashReceiving 立即返回,因为里面有一个任务启动。但是下一行:paymentSysProvider.Raise(...) 正在等待 ReceivePayment 存根的完成!
unit-testing - 断言在验证参数正确时调用了一个方法
鉴于我的测试中的以下片段:
在内部target.SaveItem
进行这样的调用:
provider.SaveItem(new SaveContract(item.Id, user, contents));
传入provider
的本地名称在哪里。mockProvider
我如何能:
- 验证同时也
provider.SaveItem
被调用 - 断言 , 和 的值
item.Id
应user
为contents
应有的值。
我想我可能可以使用 mockProvider.AssertWasCalled 但无法弄清楚设置传递给构造函数的参数条件的语法SaveContract
。
TIA
c# - 无法从用法中推断类型参数 - 单元测试 C# 中的 Rhino 错误
浏览了网络论坛后,仍然无法在我对以下行的单元测试中纠正此错误。
最初,它运行良好,但该行如下所示:
我必须添加两个输出参数,我做到了。但它会引发如下错误:
错误 166 无法从用法中推断方法“Rhino.Mocks.SetupResult.For(T)”的类型参数。尝试明确指定类型参数。C:\Me\ControllerBaseTests.cs 473 13 个单元测试
有人可以帮我吗,我是新手。
c# - 模拟/存根系统资源(如 System.Threading.Mutex)的首选方式
我有 ac# 类,它使用 Mutex 来控制对全局共享资源的访问。除非创建共享资源,否则不会分配互斥锁。我正在使用该类的部分模拟来隔离对某些获取互斥锁的方法的测试,做一些工作,然后释放它(实际上没有创建共享资源或互斥锁实例)。
我很想知道是否有一种首选的方式来模拟互斥锁。我可以将对 WaitOne 和 ReleaseMutex 的真正调用抽象为类上的方法并模拟它们。我可以在测试中为类的 mutex 成员变量显式分配一个新的 mutex 实例(假设我妥协并让单元测试可以访问 setter)。我可以将互斥锁包装在另一个实现互斥锁方法的并行接口的类中,并将其注入到我的测试类中。
有没有更好的方法来模拟 System.Threading.Mutex 等系统资源?到目前为止,我选择将真正的调用抽象到类上的方法中并模拟它们。
c# - 在单元测试中处理多个模拟和断言
我目前有一个使用实体框架进行 CRUD 操作的存储库。
这被注入到我需要使用这个 repo 的服务中。
使用 AutoMapper,我将实体模型投影到 Poco 模型上,并且 poco 由服务返回。
如果我的对象有多个属性,那么设置然后断言我的属性的正确方法是什么?
如果我的服务有多个 repo 依赖项,那么设置所有模拟的正确方法是什么?* - 为这些测试装置配置所有模拟和对象的类 [设置]?*****
我想避免进行 10 个测试,每个测试都有 50 个属性断言和数十个模拟设置。这使得可维护性和可读性变得困难。
我已经阅读了单元测试的艺术,并没有发现任何关于如何处理这种情况的建议。
我使用的工具是 Rhino Mocks 和 NUnit。
我也在 SO 上找到了这个,但它没有回答我的问题:正确地单元测试服务/存储库交互
这是一个表达我所描述内容的示例:
rhino-mocks - 检查是否调用了属性设置器
我有一门课,我正在单元测试,我想做的就是验证公共 setter 是否在属性上被调用。关于如何做到这一点的任何想法?
我不想检查是否设置了一个值来证明它被调用了。我只想确保构造函数使用 public setter 。请注意,此属性数据类型是原始字符串