Pex調査の実行中にweb.configから読み取る
-
06-07-2019 - |
質問
Pexを使用して、プロジェクトのパラメーター化された単体テストを生成し始めました。ただし、Pexでその調査を実行させると、web.configから読み取ることができないため、コードがクラッシュします(ConfigurationSettings.AppSettingsには正確な要素がありません)。調査中の作業ディレクトリは、" C:\ Program Files(x86)\ Microsoft Visual Studio 9.0 \ Common7 \ IDE"です。これが根本原因だと思います。
これを処理するためのおそらく適切な方法は、必要な値に対応するモックオブジェクトを作成することであることを知っています。ただし、これにより、web.configをtest-projectにバンドルするのに問題がないため、大量のモックコードを作成せざるを得なくなり、具体的な価値を提供できません。
Pex探索の実行中にweb.config(またはapp.config)からの読み取りを有効にするにはどうすればよいですか?
解決
あなたは自分の質問に答えましたが、あなたはコードからデータベースに直接アクセスしないので、なぜ設定ファイルでそれを行うのですか?構成ファイルの設定の周りに薄いラッパーを配置し、テストでスタブするだけです。一度にすべてを行う必要はありません。テスト対象のコードから始めて、ラッパーの後ろに直接参照を少しずつ移動します。これを行うことの具体的な利点は、テストが簡単になることです。
また、Pexを使用すると、実行ごとにコードが完全に破棄される場合(コードと、実際にそうであるかどうかのテストによって異なります)、毎回ファイルシステムにアクセスすることになります。パフォーマンスへの影響。
他のヒント
Pex開発者は(多くの場合)stackoverflowを読みません。 http:// socialのフォーラムでPex関連の質問をした方がよいでしょう。 msdn.microsoft.com/Forums/en/pex/threads