在浏览我的应用程序代码时,我遇到了这个问题:
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
可以抛出十几个不同的异常。
所以我的问题是:在生产环境之外拥有这样的代码是否可以接受,即使用于测试生产代码,并且在受控制的环境中?还是在任何情况下都不好?