- Assert.Throwsメソッドを使用する方法:
[Fact]
public void TestMethod()
{
Assert.Throws<Exception>(() =>
{
// ここに例外がスローされる可能性のあるコードを記述する
});
}
上記の例では、Assert.Throws<Exception>
メソッドを使用して、指定した型の例外がスローされることを確認しています。
- ExpectedException属性を使用する方法:
[Fact]
[ExpectedException(typeof(Exception))]
public void TestMethod()
{
// ここに例外がスローされる可能性のあるコードを記述する
}
上記の例では、ExpectedException
属性を使用して、指定した型の例外がスローされることを宣言しています。
- 式木を使用して例外をキャッチする方法:
[Fact]
public void TestMethod()
{
try
{
// ここに例外がスローされる可能性のあるコードを記述する
// 例外がスローされた場合、catchブロックで処理されます
}
catch (Exception ex)
{
// 例外がスローされたことを検証するためのアサーションを記述する
Assert.NotNull(ex);
}
}
上記の例では、try-catchブロックを使用して例外をキャッチし、アサーションを使用して例外がスローされたことを検証しています。
これらはいくつかの一般的な方法ですが、他にもさまざまな方法があります。ユニットテストには、アプリケーションの要件やテストケースに応じて最適な方法を選択する必要があります。