私は、通常、実行中のプロジェクトのApp.configまたはWeb.configに保存されているいくつかの設定に依存するいくつかのヘルパークラスをテストしています。XunitのApp.config
設定は次のようになります。
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="FileNamePattern" value="\\d{8}_\\w{4:20}\.png"/>
<!-- and the likes -->
</appSettings>
</configuration>
私は(ジェンキンスCIサーバー上の)GUIランナー(xunit.gui.clr4.exe)とのxUnitコンソールランナーとxUnitフレーム1.9を実行していますよ。現在、xunit.gui.clr4.exe.configファイルとxunit.console.exe.configファイルを手動で設定することにより、これらの構成値をテスト環境に「注入」できます。しかし、これは面倒でエラーが起こりやすい。
私はこれらの構成設定をフィクスチャーでモックすることもできます。しかし、10の異なるファイルに同じフィクスチャを使用することは、むしろ反復的です。
テストプロジェクト用のApp.configファイルを提供するなど、xUnitでこれらの構成設定を擬似的に改善する方法はありますか?
中間のISettingsを作成します。あなたはそれにapp.configを読み込むことができます。それでは、Moqのようなフレームワークを使ってインターフェイスをモックアウトするだけです。私は設定ファイルを可能な限り抽象化したいと思っています。 –