例外を検証しようとしていますが、メッセージが返されましたが、このメッセージには変数があります。 1つの方法で単体テストを使ってそれを行うことは可能ですか?ExpectedExceptionのメッセージにプロパティを設定することはできますか?
public static string FileName
{
get
{
return "EXT_RF_ITAUVEST_201605091121212";
}
}
[TestMethod()]
[ExpectedException(typeof(Exception), String.Format("Error on file {0}", FileName))]
public void ValidarNomeArquivo_DataNomeIncorreta_Mensagem()
{
throw new Exception(String.Format("Error on file {0}", FileName));
}
上記のコードは、「属性の引数は、属性パラメータ型の発現または配列生成式TYPEOF、定数式でなければなりません。」というエラーを返します。
あなたが持っているコードは、「例外」が例外を正しくスローすることを検証しています。私は、あなたの/あなたのコードをテストしたいと思いますが、Microsoftのテストはしたくないと思います。この場合、ファイル名は通常どおりクラス/メソッドからスローされます。 – AlG
データベースを読み込み、ファイル名とURLサービスを取得し、インスタンスを作成し、ファイル名をオブジェクトのプロパティとして渡すメソッドを呼び出すコンソールアプリケーションがあります。私が例外を投げる必要があるのは、コンソールアプリケーションが電子メールのログと送信を処理するためです。しかし、私が作成しているこのテスト方法は、ファイルの検証だけをテストすることなので、この時点ではすべてのプロセスが影響を受けていないと私は考えています。 –