gpt4 book ai didi

java - EasyMock 记录阶段模拟作为参数

转载 作者:行者123 更新时间:2023-11-28 21:28:24 24 4
gpt4 key购买 nike

是否可以在注册阶段使用 EasyMock 注册一个参数为 mock 的方法调用?例如:

String s = 'a string';

ClassA a = createMock(ClassA.class);
ClassB b = createMock(ClassB.class);
ClassC c = createMock(ClassC.class);

expect(c.bFactoryMethod()).andReturn(b);
a.someMethod(s, b);
replayAll();

ClassToTest toTest = new ClassToTest();
toTest.wrapperMethodThatCallsSomeMethod(s);
verifyAll();

EasyMock 提示:

java.lang.IllegalStateException: missing behavior definition for the preceding method call

最佳答案

是的,将模拟参数传入模拟方法是完全有效的。在您的情况下,我怀疑 a.someMethod(s, b) 不是 void 方法。所以你确实应该记录一个返回值。

我也没有看到 ab 是如何注入(inject)到 ClassToTest 中的。但我想这段代码被排除在问题之外。

关于java - EasyMock 记录阶段模拟作为参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32526778/

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