私は、初期化時に到達可能なディレクトリにライセンスを必要とする所有者.DLLからオブジェクトを作成するC#で次のクラスを持っています。システムパスが間違っている場合にだけスローされる例外をテストするにはどうすればよいですか?
public CplexServices{
private Cplex _cplex;
public Cplex Cplex { get { return _cplex; } }
public CplexServices()
{
try
{
_cplex = new Cplex();
}
catch
{
throw new Exception("Path or license file is wrong");
}
}
}
「新CPLEX()の」Windowsシステムパスが間違っているか、ライセンス・ファイルが正しくない場合は失敗する可能性があります。パスやライセンスファイルが間違っているときに正しい例外がスローされた場合にアサートするテストを書いてみたい。
パスまたはライセンスファイルを変更せずにこのテストを作成するにはどうすればよいですか?
新しいCplex()が正しく動作するかどうかはテストしていません。path/licenseが間違っているときに正しい例外がスローされたかどうかをテストしたいだけです。私たちのジョブサーバー上で「新しいCplex」が失敗すると、エラーメッセージが表示されずに失敗します。私はちょうど次回のパスが間違っているように、例外コードをスローするように追加しました。悪いパスやライセンスファイルが原因で失敗していることを見つけるのに1時間かかりません。次に、正しい例外がスローされていることをテストする方法があるかどうかを考え始めました。それから、皆さんは良いアイデアを持って来ました。ありがとう... – derdo