私は偽物を使用する Java コードをたくさん書いてきましたが、それらの偽物は制御可能な動作をしています。彼らは実際のハードウェアを偽造する傾向があるため、例として、通信が失われたかのように動作するように偽物に指示したり、ハードウェア障害を報告したりするテストが挙げられます。些細な例:
interface CommDevice {
boolean isConnected();
}
class FakeCommDevice implements CommDevice {
private boolean connected;
public boolean isConnected() {return connected;}
public void setConnected(boolean x) {connected=x;}
}
制御コードを新しいインターフェイスに移動する必要がありますか? 例えば
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();}
}
これらのクラスは確かにフェイクのサブセットですが、フェイクである他のクラスは除外されています。それらを説明する適切な用語はありますか?