我一直在写很多使用假货的Java代码,但这些假货具有可控行为。他们倾向于伪造实际的硬件,所以一个例子可能是一个测试,我告诉假的它应该表现得好像它丢失了通信,或报告硬件故障。一个简单的例子:
interface CommDevice {
boolean isConnected();
}
class FakeCommDevice implements CommDevice {
private boolean connected;
public boolean isConnected() {return connected;}
public void setConnected(boolean x) {connected=x;}
}
我应该将控制代码放入新界面吗? E.g。
class FakeCommDevice implements CommDevice {
public class Manager () {
public void setConnected(boolean x) {connected=x;}
}
private boolean connected;
public boolean isConnected() {return connected;}
public Manager manager() {return new Manager();}
}
这些类肯定是假货的子集,但它们排除了其他假货类。是否有适当的术语来描述它们?
答案 0 :(得分:0)
称呼他们mock objects或只是“嘲笑”。
答案 1 :(得分:0)
你会有效地为你的'假'(更好地称为'mock')类添加新功能,这会使你的代码有点误导。坚持使用相同的界面,然后看看Mockito,如果你还没有。