2009-03-24 13 views
4

私のプロジェクトは、最小値と最大値を取得することによって、各データ型に対していくつかの値(等分割法)を生成します。私は機能テストのためにこれらの値を生成しています。実際にこれらの値をnunitパートナーに渡しています。maxとminはint、float、doubleなどに適用されます。これらの値はテストデータです。ハッシュテーブルのデータ型を含む関数の単体テスト方法は?

は当初、私は今、私は、データセット、ハッシュテーブルおよびその他のコレクションなどのデータ型をサポートする必要があるなどのint型、float型、ダブル、文字列などの基本データ型の

それらを生成しました。この機能をテストするための

public DataSet MySampleMethod(int param1, string param2, Hashtable ht) 

私はint型と文字列の値を渡すことができますが、どのように私はhtのテストデータを渡したり、ハッシュテーブルのために生成されたテストデータがどのようにでしょうか?

答えて

2

コードからハッシュテーブルの実装を抽象化して、単体テスト時に擬似、注入、またはスタブする必要があります。

IHashTableというインターフェイスを作成し、インターフェイスを実装して具体的な実装を作成するだけです。次に、ハッシュテーブルを使用するすべてのクラスでIHashTableを使用するようにします。その後、IHashTableを受け入れるコンストラクタにパラメータを追加します。

ユニットテストでは、IHashTableインターフェイスのモックまたはスタブを渡します。

モッキング:http://en.wikipedia.org/wiki/Mock_object

+0

が – Arunachalam

+0

RhinoMocksは、オープンソース – Grzenio

+0

でスタブを作成するための任意のオープンソースのツールがありますが、上記の解答 – Arunachalam

関連する問題