1. ホーム
  2. c#

[解決済み] ユニットテストプロジェクトは、ターゲットアプリケーションのapp.configファイルを読み込むことができますか?

2022-04-24 16:10:31

質問

構成プロパティを読み込むためにapp.configファイルを使用する.NETアプリケーション(.exe)をユニットテストしています。 ユニットテストアプリケーション自体は、app.configファイルを持っていません。

設定プロパティを利用するメソッドをユニットテストしようとすると、それらは ヌル . これは、ユニットテストアプリケーションがターゲットアプリケーションのapp.configを読み込もうとしないからだと推測しています。

これを上書きする方法、またはターゲットのapp.configの内容をローカルのapp.configにコピーするスクリプトを書かなければならないのでしょうか?

これは の投稿はこの疑問を投げかけていますが、著者は私とは異なる角度からこの疑問を見つめています。

EDITです。 私はユニットテストにVS08 Team Systemを使用していることをお伝えしておきます。

解決方法は?

最も簡単な方法は、このような場合は .config ファイルをユニットテストのデプロイメントセクションに追加します。

これを行うには .testrunconfig ファイルを Solution Items から取得します。Deployment セクションに、出力された .config ファイル(おそらくは bin\Debug ).

deployment セクションに記載されているものは、テストが実行される前にテストプロジェクトの作業フォルダにコピーされるので、設定に依存したコードも問題なく実行できます。

Edit: 付け加えるのを忘れましたが、これはすべての状況でうまくいくわけではないので、出力された .config をユニットテストの名前と一致させます。