私はここでの提案が好きです:
次のコードを使用することをお勧めします。
public class SettingsReader()
{
public SettingsReader(System.IO.StreamReader reader)
{
// read contents of stream...
}
}
// In production code:
new SettingsReader(new StreamReader(File.Open("settings.xml")));
// In unit test:
new SettingsReader(new StringReader("<settings>dummy settings</settings>"));
大きなテスト文字列(つまり、解析するファイルの数行)を「提供」するのがベストプラクティスであるかどうか疑問に思っています。