質問

単体テストがあります

  1. モックを作成する
  2. テストするメソッドを呼び出します(モックも注入します)
  3. メソッドの結果をアサートします
  4. 模擬呼び出しを検証します

模擬呼び出しが期待どおりに検証されない場合、例外が発生し、テストに失敗します。
これを正しく検証するにはどうすればよいですか?電話するだけでいいですか

// verify property get accessor call
m.VerifyGet<bool>(p => p.IsRead, Times.AtLeastOnce());

それともAssertで呼び出す必要がありますか

// verify property get accessor call
Assert.DoesNotThrow(() => m.VerifyGet<bool>(p => p.IsRead, Times.AtLeastOnce()));

検証が失敗すると、とにかく例外が発生します。
模擬検証の正しい方法は何ですか?

役に立ちましたか?

解決

VerifyGetが十分で、アサートがなぜ多くの言い回しを追加し、値を追加していないようだ?

他のヒント

DoesNotThrow-方法は、独自の方法では、あなたの仕様に準拠するかどうかをテストするために使用する必要があります。

あなたがVerifyGetの行動の代わりに、あなたのSUTの動作をテストしているように、

要するに、DoesNotThrowを追加することになります。

もちろん、あなたがVerifyGetのまわりでそれをラップすることができますが、私は唯一のVerifyGetはとにかくテストを失敗していましたので、混乱を招く事になると思います。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top