2010-02-01 71 views
9

我正在使用Visual Studio 2008 Express,並且正在編寫單元測試,其中有許多預期的未處理異常。這會導致在調試器中運行這些測試時顯示大量異常助理彈出窗口。如何在Visual Studio 2008 Express中禁用異常助手和未處理的異常彈出框

我已禁用了VS選項中的異常助手,但彈出了一個不同的未處理的異常對話框。我知道使用Visual Studio Professional可以擺脫這些問題,但是如何使用快速版來做到這一點?

順便說一下,我使用Assert.Throws而不是ExpectedException attribute(NUnit),這會導致這種情況,但我想使用Assert.Throws代替。謝謝!

回答

6

在Debug菜單,進入異常(按Ctrl + Alt鍵+Ë)。從這裏你可以告訴調試器在拋出異常時不要中斷。只需取消選中懶惰選項的所有框,或者去挖掘您不想讓它突破的特定例外。

但是請注意,這可能不是您想在正常調試情況下發生的情況,所以如果您嘗試調試某些東西&想要查找異常,請不要忘記將其重新開啓。

編輯:我的道歉,儘管在這個問題(包括標題)書面幾次,我沒有注意到你在談論的Express版...教我脫脂閱讀的問題。不知道以上是否適用於快遞版,所以它可能仍值得一試。

編輯2:好吧,看起來像Exceptions dialog is still available in express edition

+1

感謝您的文章。得到這個,我只注意到它:在Visual Web Developer Express中,Exceptions對話框不可用。但是,在Visual C#Express中,對話框IS可用!當然,我需要這個工作在Visual Web Developer ....爲什麼MS會這樣做? – jrupe 2010-02-01 22:52:18

+0

@jrupe - 根據我在第二次編輯中添加的鏈接,它*應該*在Web開發人員快遞中可用。 ...也許它只是不在菜單默認?你有沒有嘗試Ctrl + Alt + E的快捷鍵? – Alconja 2010-02-01 23:57:22

+0

是的,我試過Ctrl + Alt + E,但它不起作用... – jrupe 2010-02-03 01:44:13

0

我要猜測,你遇到下列之一:

  • 你扔像StackOverflowException「特殊」不同的是,運行時從其他例外處理不同。
  • 您的測試代碼創建一個新線程,並在該線程上引發異常。
0

如果發生這種情況的內部try-catch,使空的catch,它忽略例外,工作對我來說

try 
{ 

} 
catch 
{ 

}