私のアプリケーションのコードを閲覧している間、私はこれに直面しました:
private string[] ReadFromFile(string path)
{
string[] data = null;
try
{
data = File.ReadAllLines(path);
}
catch (Exception)
{
throw new Exception("The file is not correct");
}
return data;
}
さて、このコードは良くないことを知っているので、これをリファクタリングしようとしていました。ただし、このコードは、FitNesseの一部のテストの定義で使用されます。このコードは本番環境では使用されません。このメソッドで指定されたパラメーターは常に正しいはずです。そのため、try / catchブロック全体を削除して、必要に応じてクラッシュさせたいと思います。FitNesseは、スローされた例外に関する詳細をすべて提供してくれますが、これはテストフィクスチャであるため、問題ないかどうか疑問に思っています。
File.ReadAllLines
さまざまな例外をスローできます。
だから私の質問:本番コードのテストに使用されたとしても、本番外で、制御下の環境でそのような種類のコードを使用することは許容されますか?それともどんな状況でも悪いですか?