我想寫一個單元測試來檢測拋出的異常。使用ExpectedExceptionAttribute
,我從MSVS內部運行測試,並且當TestMethod遇到異常時,調試器突破異常,但TestMethod正確跳過並報告通過。防止VS C#單元測試違反例外
有沒有一個標誌告訴VS不要在單元測試期間中斷?
我想寫一個單元測試來檢測拋出的異常。使用ExpectedExceptionAttribute
,我從MSVS內部運行測試,並且當TestMethod遇到異常時,調試器突破異常,但TestMethod正確跳過並報告通過。防止VS C#單元測試違反例外
有沒有一個標誌告訴VS不要在單元測試期間中斷?
不要在調試會話中運行測試。你可以選擇'運行選擇'或'調試選擇',選擇第一個,你應該沒問題。
如果您按CTRL + ALT + E
,則可以配置在引發和/或不處理不同類型的異常時調試器是否會中斷。
我發現使用這些設置有時非常方便。
該對話框上有很多選項(複選框)(調試:例外)。我發現我只需要取消選中公共語言運行時異常(行)引發(列)框。我同意另一種選擇是在沒有調試器的情況下運行,但有時候您會因爲某種原因想要使用調試器運行。因此,當您需要使用調試器並且不希望中斷一次機會異常時,這是一個很好的選擇。 – steve
作爲替代MS部具體[ExpectedException]
,如果你需要調試你的單元測試,你可以明確的try/catch異常,並斷言異常的類型,如在這裏完成:How do I use Assert to verify that an exception has been thrown?
@Jake使用ctrl + F5在這種情況下,這是運行選擇相同(非調試) – ChrisBint
是的,我意識到我的CTRL不工作!所以我刪除了我以前的評論。在閱讀你的答案後,我找到了「測試」菜單,所以我想我必須從那裏跑。謝謝。 – Jake