2010-01-16 41 views
2

我有一套TestFixtures運行良好。我在夾具中添加了一個新的測試,但由於某種原因,我無法運行它。其他班級甚至同一班級的其他考試運行良好。爲什麼測試崩潰使用NUnit/TestDriven.Net2.0?

  • 兩個NUnit的GUI /測試驅動崩潰

如果我從NUnit的GUI運行我得到這個錯誤:

NUnit的已停止使用此消息

Description: 
    Stopped working 

Problem signature: 
    Problem Event Name: CLR20r3 
    Problem Signature 01: nunit.exe 
    Problem Signature 02: 2.5.3.9345 
    Problem Signature 03: 4b2334ce 
    Problem Signature 04: Engine 
    Problem Signature 05: 1.0.0.0 
    Problem Signature 06: 4b51c6fe 
    Problem Signature 07: ad 
    Problem Signature 08: 0 
    Problem Signature 09: System.StackOverflowException 
    OS Version: 6.0.6001.2.1.0.768.3 
    Locale ID: 2057 

工作TestDriven.Net 2.0裏面VS2008,得到這個錯誤:

TestDriven.Net 2.0已停止工作

Description: 
    Stopped working 

    Problem signature: 
     Problem Event Name: CLR20r3 
     Problem Signature 01: processinvocation86.exe 
     Problem Signature 02: 3.0.2556.0 
     Problem Signature 03: 4af0254b 
     Problem Signature 04: Engine 
     Problem Signature 05: 1.0.0.0 
     Problem Signature 06: 4b51c6fe 
     Problem Signature 07: ad 
     Problem Signature 08: 0 
     Problem Signature 09: System.StackOverflowException 
     OS Version: 6.0.6001.2.1.0.768.3 
     Locale ID: 2057 

回答

6

嗯,這似乎相當明顯,你是導致堆棧溢出。 StackOverflowException是一個致命的異常,會導致CLR - 這就是爲什麼你會看到這個問題。

我建議你調試進入測試,找出堆棧溢出的原因。這通常是一個遞歸問題。例如,如果你在一個屬性一個錯字:

private readonly int age; 

public int Age 
{ 
    get { return Age; } // should be "return age;" 
} 

這將導致堆棧溢出 - 但這樣可以一不小心寫成遞歸方法。

+0

感謝隊友,不勝感激。 – 2010-01-16 14:41:49

+0

謝謝,這真是*我的問題! :) – gehho 2010-03-16 16:02:51