【发布时间】:2011-12-14 09:11:56
【问题描述】:
我有一个建造者:
class Builder{
private String name;
private String address;
public Builder setName(String name){
this.name = name;
return this;
}
public Builder setAddress(String address){
this.address = address;
return this;
}
}
在 mockito 中模拟构建器会给我每个方法的 null。那么有没有一种简单的方法可以让构建器在每次函数调用时返回自身,而无需使用when().thenReturn 模拟每个函数本身。
【问题讨论】:
-
你真的需要模拟这个吗?它看起来不像是值得嘲笑的那种依赖。它看起来像“数据”类,而不是“服务”类。我很少发现在没有太多实际行为的情况下创建类很有用。
-
这只是一个例子,真正的builder有点复杂,在这种情况下不需要测试。
-
你能把它们分开,这样你有有一个“愚蠢的建造者”(不需要模拟),然后是做的服务部分 需要嘲笑吗?
标签: java unit-testing mockito