問: Cppunit 可以測試內存泄漏嗎?
答: 內存泄漏適合于集成后進行,并且也有專門的工具。對于某個代碼單元來說,內存泄漏是難于測試的,單元內的未釋放內存不等于會有內存泄漏。內存泄漏不是單元測試的內容,把內存泄漏扯到單元測試中來是吃力不討好的。所有集成后才易于發現的問題,都不應該是單元測試的內容。
問:感謝,不過cppunit也可以集成測試的吧?
答: 廣義來說,測試比較高級的函數,如果底層函數不是打樁來代替,就可以算是集成測試。
狹義來說,集成測試就是測試模塊之間的接口,接口是什么?還不就是函數。管它面向對象還是面向丈母娘,C/C++的單元和集成測試主要就是測試函數功能。這樣說的話,CPPUNIT當然可以用于集成測試。
不過,集成測試也不測內存泄漏,內存泄漏測試應該是集成之后的事。內存泄漏測試是很簡單的,VC系列都有這個功能,原理也簡單:申請內存時記錄一下,釋放時再登記一下,系統退出后,一對比就出來結果了。要在單元和集成測試中來做,那就難了。鼻子用來呼吸,嘴巴用來吃飯,都很簡單,硬要用鼻子來吃飯,那么...
新聞熱點
疑難解答