2012-02-24 C# Windowsフォームの自動テスト化 Windowsフォームの自動テストは鬼門? Windowsのフォームは、自動テストが書きにくい。 今まで失敗してきた歴史があるけど、今日初めてうまくいったので、ポイントをメモ。 プロジェクトの構成 アーキテクチャ: クライアントサーバー構成 イントラ内にサーバー構築 フレームワーク: クライアント側:.net2.0 サーバー側:.net3.5 DB: SQL Server 構成ファイル クライアントプロジェクトのapp.configを、テストプロジェクトで読み込む必要がある 今回は試験的にまるっとコピった <configuration>タグの先頭に<configSections>が来てないとだめ コーディング Formを画面に表示したいので、テストメソッド内でまずFormインスタンスを生成してShowする ShowしたフォームにPrivateアクセスするため、Form_Accessor.AttachShadow(form)して、アクセサインスタンスを生成 アクセサインスタンスに対し、ボタンのPerformClickなどで操作を行う