NUnitでプライベートメソッドをテストする

NUnitでプライベートメソッドをテストするときのサンプルコードをまとめた。パブリックメソッドをテストするときは、本番コードがテスト対象のクラスを呼び出すように呼び出して呼び出せば良い。(例:Addメソッド)プライベートメソッドをテストするには、面倒であるが、下記のコードのようにリフレクションを使って呼び出すしかない。下記サンプルコードは、プライベートなインスタンスメソッドと、プライベートなスタティックメソッドのサンプルコードと、テストコードの例である。Subメソッドは単純な引き算のメソッドであるが、プライベートである。Type.GetMethodを使って、タイプ情報からメソッドのメタデータを取得し、Invokeを使ってメソッドを実行する。また、IsOKはbool型の戻り値を返す引数なしのプライベートなスタティックメソッドである。この場合は、少し書き方が異なるので参考までにサンプルコードを書いた。

C#のテスト対象クラス

C#のテストコード

VBのテスト対象クラス

VBのテストコード

トラックバック

トラックバックURL:
http://www.apricot-jp.com/cgi/mt/mt-tb.cgi/322

関連情報

・Microsoft JScript 実行時エラー:オブジェクトを指定してください。
・このログインで要求されたデータベースXXX を開けません。ログインに失敗しました。ASPNET はログインできません
・Logging Application Blockのトラブルシューティング
・IISのログ出力先
・このログインで要求されたデータベースXXX を開けません。ログインに失敗しました。ASPNET はログインできません
・C# 3.5 yieldの読み方
・ASP.NET サーバーサイドのイベント処理の順番
・ASP.NETのWebページでグーグルアドセンスを貼り付ける方法
・IIS メタベースにアクセスできませんでした
・VSSで管理されているプロジェクトは、ファイルの名前の変更や移動は極力行わない方が良い
・Oracle 9.2へOLE DB接続する方法
・単体テストのデータ
・この行は既に別のテーブルに属しています
・データベースのバージョンは 655 なので、開けません。
・証明書ストアでマニフェスト署名用の証明書が見つかりません。
・次のモジュールは最適化を有効にされて、またはデバッグ情報なしでビルドされました
・String.Concatメソッドを使った文字列の連結
・ファイルの存在をチェックする
・テキストファイルをロードし文字列を読み込むサンプル
・任意の数の引数を受け取るメソッド

Copyright(C) 2007 アーキテクト360 Allrights reserved.