○単体テストTips
・プライベートアクセサを作るとプライベートメソッドのテストができる
・InternalVisibleToアセンブリ属性を使用するとInternalメソッドのテストができる
・単体テストの注意点
VSTestHost.exeというプロセス上で動くのでHttpContextなどは正しく動作しない
・カレントディレクトリが本番環境と異なる
・構成設定ファイルはテストプロジェクト側のものが使用される
・DBへの更新処理をテストする場合は自動トランザクション機能を使用するとテストが終わったときに自動でロールバックできて便利
以下サンプルコード
using(TransactionScope scope = new TransactionScope(TransactionScopeOption.RequiresNew)) { //テストコード }