基礎について触れましたが、今回はデータドリブンなテストがテーマです。3つのアトリビュートを使ってのテストです。それぞれ用途が異なると(個人的に)思っているので、そこら辺を整理します。テストをされる側のコードサンプル。シンプルなメソッドをテストの題材にしてみます。使った場合のテストコード。説明よりもコードみると雰囲気つかめますね。ここでは1テストデータにつき3つ(テスト対象のメソッドの引数を2つと、その結果の期待値)にしています。メソッドのシンタックスに合わない場合は、もちろんコンパイルエラーになります。?)命名規約のひとつですね。テスト対象のオブジェクトにはこの名称にすします。テストエクスプローラーからテストを実行すると、データの分だけテストが実行されているのが確認できます。(あとは、テストメソッド名をまともに書けば、テストエクスプローラーの結果でなんのテストやってるかみやすくなりますね。)用途テストデータの件数が少ない場合はサクッと書けるので良いですね。データ件数が多い場合は、見た目も悪くなるし、変更するのもめんどいしデータのバグも生みそうなので向いてないと思います。付けると、テストメソッドがちょっとすっきりします。書き方は何パターンかありそうです。型のメンバーを用意します(10行目)。テストメソッドで2行目のように指定すればOKです。メソッドからデータを取得するまず、テストデータ取得用のメソッドは10行目です。引数付きのメソッドも可能です。テストメソッドですが、2行目のようにパラメーターを付けることで、10行目のメソッドに引数を渡して呼び出すことができます。今回はコレクションに対して単純な実装をしましたが、共通のデータでシンプルにフィルターをかけたいとかなら良さそうですね。テストエクスプローラーで実行結果を確認すると、実装の通り、テストデータの先頭2つのみのテストになります。クラス名を指定して呼び出すこともできますが、それは後述します。データドリブンなデータを生成できます。