xUnit 2 単体テストから IApplicationEnvironment にアクセスするにはどうすればよいですか?
これが必要だと思うシナリオがいくつかあります。
- 単体テストで構築された、埋め込まれていない構成ファイルから読み取る
- 単体テストに関連するファイルの作成と書き込み
xUnit 2 単体テストから IApplicationEnvironment にアクセスするにはどうすればよいですか?
これが必要だと思うシナリオがいくつかあります。
理想的ではありませんが、静的サービス ロケーターを使用してアクセスできます。
var appEnv = CallContextServiceLocator.Locator.ServiceProvider
.GetService(typeof(IApplicationEnvironment)) as IApplicationEnvironment;
xUnit がコンストラクターを介してフレームワークの依存関係を挿入するかどうかはわかりませんが、そうではないに違いありません。もしそうなら(これは完璧でしょう)、コンストラクターを介してテストクラスに注入するだけです。