gpt4 book ai didi

c# - 安装程序似乎没有注册并抛出 MockException

转载 作者:太空宇宙 更新时间:2023-11-03 11:31:52 25 4
gpt4 key购买 nike

我有这些模拟:

_processWrapperMock = new Mock<IProcessWrapper>(MockBehavior.Strict);
_processStartInfoMock = new Mock<IProcessStartInfo>();

以及 Start() 方法的设置:

_processWrapperMock.Setup(m => m.Start(_processStartInfoMock.Object))
.Returns(new Process());

我的 _processWrapperMock 实例被传递给包含我正在测试的方法的对象的构造函数。

var wrapper = new WrapperClassImTesting(_processWrapperMock.Object);

然后我执行我正在测试的方法:

byte[] output = wrapper.MethodImTesting(someParams);

MethodImTesting 中,_processWrapperMockStart 方法被执行,但是我之前的设置似乎没有被考虑在内。我得到的错误是在行:

using (var process = _processWrapper.Start(processStartInfo))

throw :

Mock Exception was unhandled by user code

IProcessWrapper.Start(GraphVizWrapper.ProcessStartInfo) invocationfailed with mock behavior Strict. All invocations on the mock musthave a corresponding setup.

我在做什么/没做什么,我需要做什么才能让它按预期工作?

最佳答案

为什么要费心去创建一个模拟......你就不能这样做吗?

_processWrapperMock.Setup(m => m.Start(It.IsAny<IProcessStartInfo>)).Returns(new Process());

您确定没有正在访问的其他方法或属性吗?

关于c# - 安装程序似乎没有注册并抛出 MockException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7498729/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com