【发布时间】:2016-12-02 12:07:52
【问题描述】:
我需要在 void 方法中模拟一个方法。
这是我的示例代码:
class MyClass {
public MyClass(Session s, Boolean b1, Boolean b2)
void myMethod(some paramaters...) {
// some code
int count= setSize();
}
int setSize() {
// some calculation....
return size;
}
现在在我的测试类中,我想模拟 setSize() 以返回我自己的值,比如 300。
我确实喜欢:
MyClass mockclass = createNiceMock(MyClass.class);
EasyMock.expect(mockimplyZero.setBatchSize()).andReturn(Integer.valueOf(300));
mockclass.myMethod(parameters....)
当调用myMethod 时,它没有正确进入方法。
我认为这可能是 EasyMock 正在为 MyClass 构造函数设置默认值。如何正确模拟?
MyClass 中除了构造函数 myMethod 和 setSize 之外没有其他方法
【问题讨论】:
-
提示:请阅读 java 命名约定。方法名称为 camelCase;领域也是如此;但是类名是大写的。这很重要;偏离这些标准会使您的代码更难为其他人阅读。