我有一個奇怪的問題與Visual Studio 2010旗艦版: 我的一個Nunit(2.6.2)測試用例在調試模式下失敗但通過運行模式,就好像我們在兩種情況下有完全不同的代碼路徑。Visual Studio 2010:Nunit測試用例在調試模式下失敗,但通過運行模式
這是一個已知的錯誤嗎?或者是否有一些選項與我失蹤?
請賜教! 非常感謝。
編輯 - 更多信息 我的應用程序向組織內的一組人員寫的一個dll提交了一些請求。該DLL做一些計算並將結果返回給我。在運行Nunit測試時,運行Nunit測試正常,但調試測試用例給我一個錯誤 - 一個異常是從內部拋出的。在測試用例中探索dll的行爲(例如,提交具有特定參數的請求,檢查dll的輸出)該DLL。
重要提示:運行/調試另一個測試用例可以獲得一致的結果。
所以,對於怪異的測試用例: 1,無論是DLL還是不錯的,和調試模式下的東西打破了DLL 2,或者,該dll有一個錯誤,這是由一些調試模式下觸發。
據我所知,在Visual Studio中運行和調試一段代碼的唯一區別在於,在調試時,一個pdb文件被加載,而在運行時卻不是。本質上,加載符號表以識別代碼執行。
然後,這個問題首先沒有意義 - 爲什麼加載符號表會影響dll的行爲? (要求任何人在沒有看到任何代碼的情況下給出解釋是不公平的,但是,因爲它是公司的代碼,所以我不能在這裏展示它,如果你在職業生涯中遇到過這樣的事情,請與我分享你的情況發生了什麼 - 讓我們希望我的問題有同樣的原因,這樣我才能真正知道出了什麼問題。謝謝)
如果你能告訴我們一些你正在測試的東西以及測試失敗的樣子,那真的很有幫助。 –
您是否使用了兩個不同的.dll或指向相同的確切文件?可能是不同版本的dll。另外,它是一個自定義的例外或Windows?嘗試解釋更多,如果你可以,可以給出一個想法。 – bland