Hatena::ブログ(Diary)

<s>gnarl,</s>技術メモ”’<marquee><textarea>¥ このページをアンテナに追加 RSSフィード

2007-02-04

例外テストの落とし穴

「ここで例外が飛ぶ」ことをテストしたいけど例外の型を明示するのが面倒なとき、

[Test]
public ExceptionTest() {
  try {
    ThrowException(); //ここで例外が飛ぶはず
    Assert.Fail(); //……なのでここは通らない
  }catch{}
}

というコードを書いていたのだけど、Assertって失敗したとき例外投げるのね。

NUnitの例外もすべて握りつぶす駄目テストだった。無意味…… ちゃんとExpectedExceptionを使いましょうという話。