2013-07-22 62 views
1

這對我來說很明顯,必須有一種方法來比較預期異常的消息和應該與ExpectedException屬性一起提供的預期常量。不幸的是,沒有這樣的事情。我錯過了什麼?如何使用Microsoft.VisualStudio.QualityTools.UnitTestFramework斷言預期異常的消息?

+1

你必須創建自己的ExpectedException Attribueb(這很簡單)。看到這[回答](http://stackoverflow.com/questions/1944774/in-mstest-how-can-i-verify-exact-error-message-using-expectedexceptiontypeof/9152420#9152420) – Schaliasos

回答

1

不,你不會錯過任何東西。您必須嘗試/捕獲異常並自行檢查。

您可能需要考慮使用更好的單元測試框架,如xUnit.net,它爲斷言異常提供了更好的支持。

注意,使用的ExpectedException是有問題的(見這個說明中的「經驗教訓」,在http://xunit.codeplex.com/wikipage?title=WhyDidWeBuildXunit

+0

我感到震驚。 MS真的不會給任何東西狗屎。 –

+0

他們只是盲目地複製了NUnit和所有的缺陷。 xUnit.net試圖解決所有這些問題。我們仍然使用mstest,但是我只寫了自己的'Assert.Throws <>'版本,我很開心。 – RobSiklos