好吧,它們不是單元測試,而是端到端測試。該設置有些牽扯。單元測試將使用C#,ODBC連接。每個單元測試都會嘗試自行清理,但每過20次測試(每個C#類一次),我們都需要執行完整的數據庫還原。我不認爲我可以做到這一點通過ODBC連接,根據該文件:嘗試針對SQl Server 2008編寫單元測試時出現雞和蛋問題(恢復數據庫)
消息6104,級別16,狀態1,第1行 不能使用KILL來殺死你自己的 過程。
不過,我想這樣做,以便199個測試不會因爲清理不好而走火入魔。有另一種方法嗎?也許我可以打開一個不同的「連接」,如使用COM自動化或類似的東西,然後從那裏殺死所有的數據庫連接?如果是這樣,我該怎麼做?
此外,將客戶端能夠恢復後自動重新連接,否則我將不得不每20個測試左右拆除一切嗎?
如果你覺得這個問題令人困惑,請讓我知道你的問題是什麼。謝謝!
只是關於術語的說明 - 如果你的單元測試並不只是測試一個單位,他們沒有單元測試。在這種情況下,因爲您正在測試單位並且同時依賴於其他單位(依賴於數據庫的代碼/類),所以您可以將其稱爲「集成測試」。 – 2011-01-06 21:49:28