8


3

単体テストを適切に実装するために検討するC#プロジェクトは何ですか?

大きすぎるものではありませんが、2 + 2 = 4タイプの例もありません。 具体的には、WPFとMVVMであると便利です。 ビューモデルのテスト対象について混乱しています。

ラムダにあるものをどのようにテストしますか? あなたは? テストできるように、関数をパブリックにしますか。 または、最終結果をテストするだけですか?

5 Answer


1


NerdDinnerは、単体テストの完全なスイートを含む、比較的単純なASP.NET MVCアプリケーションです。


1


NunitテストスイートをWPF / MVVMで使用します。 ここに、http://www.15seconds.com/issue/040922.htm [まともなチュートリアル]があります。

単体テストを作成するとき、テスト対象はオブジェクトの動作によって異なります。 ほとんどの場合、最終結果で十分です。 私は主に公開メソッド/属性をテストし、既知の状況に基づいて結果が予想されるものであることを確認します。 (TDDでは、コードを記述する前にテストを記述することを忘れないでください。)

CodeProjectには、ダウンロードしてステップスルーできるいくつかのNunitプロジェクトがあり、それが私が始めた方法です。

境界、成功/失敗、同等性などをテストします。 練習すればするほど、より多くのことをテストすることを考え、より快適になります。

更新-より複雑なプロジェクト

さらに高度な機能が必要な場合は、http://www.zorched.net/2007/03/10/mocking-netを含むhttp://beta.codeproject.com/KB/dotnet/tdd_in_dotnet.aspx[projects]をご覧ください。 -objects-with-nunit / [Mocks]は、私にとって、単体テストで把握するのが最も難しいものでした。


1


Roy Osherove http://weblogs.asp.net/rosherove/archive/tags/TestReview/default.aspx [おもしろい/不気味な動画はありますか]有名なオープンソースコードのテスト品質について。


0


Jason Dolingerによるこの素晴らしいビデオ(私は彼と一緒に仕事をしたことがありますが、彼は彼のものを知っています!!)を見ると、MVVMの世界でユニットテストに触れています。 広範囲ではありませんが、いくつかのアイデアが得られるはずです。


0


MicrosoftのPatterns&Practices GroupからPrismをチェックしてください。ダウンロードはこちら:http://compositewpf.codeplex.com/

複数のサンプルコードソリューションと広範なユニットテストが含まれています。