问题标签 [rhino-mocks]
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# - 使用 Rhino Mocks 如何为 Mocked 方法设置参数的属性
使用新的 Rhino Mocks 3.5 Arrange/Act/Assert (AAA) 测试风格,我在编写测试时遇到问题。
我有一个调用存储库类上的方法的方法。ActivateFoo,我的 Foo 对象有一个 IsActive 属性。ActivateFoo 对象的结果应该改变属性。
这是示例代码:
我猜关键代码段将在“ActivateFoo(foo))”之间。和“返回(真);”。
有一点要澄清方法链接的东西在幕后是如何工作的,如果在我期望的行上写了代码,它是在 Return() 之后还是之前有关系吗?(当然,除非解决方案是使用 Expect 的 MethodOptions 重载,或者其他)。
提前感谢您的帮助。
c# - 为什么 RhinoMock 没有通过这个测试?
我现在有一堂课是这样的:
所以 Method2 永远不会被调用(我的代码看起来有点不同,但我有这个 if 子句的计算结果为 false,因此不执行 Method2。通过调试检查它以确定)。我想告诉 RhinoMocks 我希望 Method2 被调用并且测试失败:
...但是测试通过了。
(Expect.Call 中 lambda 表达式的原因是,我的实际 Method2 有参数)
我的问题:
- 这是在这种情况下进行测试的常用方法吗?(我只是从 RhinoMocks 和一般的模拟框架开始)
- 为什么测试会通过?
unit-testing - Rhino Mocks - 如何断言一个模拟方法被调用了 n 次?
我如何断言模拟对象上的方法被准确地调用了 n 次?
这是来自控制器操作的代码片段,我喜欢测试:
“服务外观”对象是(严格的)模拟,将被注入到控制器中。单元测试应该断言操作中的 CreateNewMatch 方法被调用了 n 次。(例如 5 个)
c# - 模拟和 HttpContextBase.get_User()
我想模拟 HttpContext 的 User 属性。我正在使用 Scott Hanselmans MVCHelper 类和 RhinoMocks。
我有一个包含代码的单元测试,如下所示:
...
...
我的 MockIdentity 和 MockPrincipal 类分别是符合 IIdentity 和 IPrincipal 的模拟。
运行报告的单元测试时出现错误:
System.NotImplementedException :方法或操作未实现。在 System.Web.HttpContextBase.get_User()
当我尝试为 User 属性设置期望时,就会发生这种情况。
我知道 httpContextBase 有一个未实现的 getter 和 setter,但我认为 Rhino 在模拟时会处理这个问题。
这是否意味着我必须从 HttpContextbase 派生并覆盖我的模拟对象的属性。这似乎很奇怪。
其他用户也遇到过这个问题,在这里报告:http: //www.mail-archive.com/rhinomocks@googlegroups.com/msg00546.html
mocking - Moq 和 Rhino.mocks 的功能是什么?
我找不到 Moq 和 Rhino 的具体功能比较。所有的问题都是“你更喜欢哪个以及为什么”,或者“这是你如何在 rhino 中做一个简单的模拟以及它是如何在 moq 中完成的”。
我在任何地方都找不到深入的比较。我知道语法差异,我不是在寻找答案。 我正在寻找能力比较。例如:
Rhino 有 Expect.On() 用于线程模拟。起订量可以吗?
多模拟(用一个模拟实现多个接口)怎么样。起订量可以吗?
我相信 Moq 现在可以模拟受保护的成员。犀牛能做到吗?
编辑:我最后也看了一些其他的 .Net 框架。
unit-testing - Rhino Mocks:“验证”与“断言”
使用 Rhino Mocks 时,什么时候适合使用“VerifyAll”,什么时候应该使用“Asserts”?
asp.net-mvc - 如何使用 Rhino Mocks 模拟 HttpContext.Application
我是 Mocking 框架的新手,并且已经开始使用 RhinoMocks 来协助我的 MVC 应用程序单元测试。
我正在使用Scott Hanselmanns MVC Mock Helper来协助模拟 HttpContext。我已经成功地(一段时间后)模拟了一些我需要的东西,但是在涉及到 HttpContext 的 Application 属性时却没有解决问题。
在我的应用程序中,我将一个对象存储在应用程序中并在控制器中检索它,例如:
这是在我的 MVC 应用程序中的 Application_Start 上创建的。
更新以下第一个答案(为清楚起见附加代码)目前在测试设置中我做:
在我的单元测试设置中,我这样做:
此调用为 Application 对象引发 NullReference 异常。
我的问题有两个:
1)这是正确的方法还是我从设计/架构的角度做错了什么?
2)为什么这不起作用?!
提前致谢。
java - 等效于 EasyMock 中的 LastCall.IgnoreArguments
我已经广泛使用 Rhino.Mocks,目前正在使用 EasyMocks 在 Java 中编写一些测试。但是,我无法在 EasyMocks 中提取 LastCall.IgnoreArguments() Rhino.Mocks 等效项。
无论方法中的参数如何,如何使用 Easy Mocks 返回一个值。
例如:
无论参数sweetMsg如何,我如何模拟此界面以返回“Hell Oh World”。
unit-testing - 你如何从 Rhino.Commons 模拟 UnitOfWork?
我的应用程序正在使用 Rhino.Commons - NHRepository 和 UnitOfWork。我喜欢交易的 With.Transaction() 语法并且已经使用了一段时间。
但是我遇到了一个问题——如何模拟 UnitOfWork 进行测试?特别是这给我带来了麻烦:
我可以用 Rhino.Mocks 模拟存储库,但是我怎样才能轻松地模拟 UnitOfWork 来处理这种代码呢?
mocking - Rhino Mocks:模拟方法返回 null
我正在尝试模拟一个数据存储库对象,但是在对我的 MockRepository 设置期望之后,它每次都返回 null。我的代码如下:
测试底部的断言失败,返回的人始终为空。我知道我的模拟肯定做错了......想法?