Closed. This question does not meet Stack Overflow guidelines 。它目前不接受答案。
想改善这个问题吗?更新问题,使其成为 Stack Overflow 的 on-topic。
1年前关闭。
Improve this question
我正在寻找一个可以用于测试使用动态对象的 C# 代码的框架。我希望能够指定方法 stub 并设置模拟期望,就像在接口(interface)上使用 Rhino Mocks 一样
例如使用 Rhino Mocks 样式的类似以下内容
或者
其中被测方法将参数声明为动态对象。
有什么建议么?
附言请原谅任何 Rhino Mocks 语法问题,我之前使用 MOQ 完成了此操作,并且我刚刚使用 Rhino Mocks 快速引用指南写出了相同的概念。
想改善这个问题吗?更新问题,使其成为 Stack Overflow 的 on-topic。
1年前关闭。
Improve this question
我正在寻找一个可以用于测试使用动态对象的 C# 代码的框架。我希望能够指定方法 stub 并设置模拟期望,就像在接口(interface)上使用 Rhino Mocks 一样
例如使用 Rhino Mocks 样式的类似以下内容
var fakeService = MockRepository.GenerateStub<dynamic>();
fakeService.Stub(s => s.SomeMethod(Arg.Is(someValue))).Returns(someResult);
sut.MethodUnderTest(fakeService);
或者
var fakeService = MockRepository.GenerateMock<dynamic>();
fakeService.Expect(s => s.DoSomething(Arg.Is(someValue)));
sut.MethodUnderTest(fakeService);
fakeService.VerifyAllExpectations();
其中被测方法将参数声明为动态对象。
有什么建议么?
最佳答案
好吧,您可以随时尝试模拟 DynamicObject
。它看起来有点不同,但它可以用你想要的任何东西来模拟动态对象。
var fakeService = MockRepository.GenerateStub<DynamicObject>();
object outResult;
fakeService.Stub(s => s.TryInvokeMember(
Property.Value("Name", "SomeMethod"),
List.Equal(new{someValue}),
out outResult))
.OutRef(someResult)
.Returns(true);
sut.MethodUnderTest(fakeService);
附言请原谅任何 Rhino Mocks 语法问题,我之前使用 MOQ 完成了此操作,并且我刚刚使用 Rhino Mocks 快速引用指南写出了相同的概念。
关于c#-4.0 - C# 动态对象的模拟/ stub 框架,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7445794/
10-09 19:24