ここにシナリオがありますが、私はスパゲティコードをリファクタリングしています。私の最初の問題は、他のクラスを新しくした一連のクラスで、テストしたいクラス(Search.cs)の依存関係を必要とするクラスにすることでこれを修正しました。別のクラスから継承したクラスを模擬してください
public Search(XmlAccess xmlFile, SearchDatabaseConnect searchDatabaseConnection)
{
this.xmlFile = xmlFile;
FsdcConnection = searchDatabaseConnection;
Clear();
}
私はさらにそれをチェーンアップしています。それはすべて良いですが、私は少し問題があります。
他のクラスから継承しているクラスは、私はResharperを持っていますが、インタフェースを抽出しましたが、問題は依存クラスが別の具象クラスを継承していることです。
public class SearchDatabaseConnect : DatabaseConnect, ISearchDatabaseConnect
{ // }
私はDatabaseConnectの継承についてどうすればよいでしょうか?どのように私はそれを嘲笑するのですか?明らかにそれがなければ、私はすべてISearchDatabaseConnectを模擬することができ、離れて行くことになるでしょうが、具体的なクラスの継承にはまっています。私のgoogl'ingが失敗である前に、これについての例を見つけることになったとき、私は人々がこれにぶつかると確信しています。
ありがとうございました。
参考までに "newing it up"は一般的にインスタンス化と呼ばれています;-) –
ありがとう - それは単に個人的な好みの問題です、私は "newing"という用語を好む傾向があります。 OK n ew)とb)何らかの理由でよりインスタント化という用語が楽しいようです。 – Kenn