我想單元測試我的程序(使用C語言),因爲我知道這樣做的好處,因爲它顯示了問題出在哪裏。單元測試 - 如何去做?
我也喜歡黑盒測試,因爲它告訴我程序是否工作(至少對於測試)。
目前,我正在使用Autotest(Autoconf自帶)爲了不添加依賴項。
在這一點上,我不介意使用更好的框架,但問題是我不想使用不同的框架來進行黑盒和單元測試。是否有可能從單元測試框架運行黑盒測試?我真正想要的是很好的日誌輸出,準確地說出了什麼地方出了問題,在哪裏。
我的其他選擇是使用Autotest進行單元測試。問題是沒有框架。我寫了一個小的「測試驅動程序」,它接受要測試的函數的名稱和傳遞給該函數的參數,並調用該函數。問題是我不確定在斷言和輸出函數的返回值之間使用什麼邊界(出於記錄目的,因爲我喜歡Autotest如何給我一個差異)。由於大多數函數都返回列表,所以準備使用具有預期輸出的差異(使用自動測試的expout)會更快。
你的程序用什麼語言編寫? – Mathias 2009-11-25 23:35:35
呃,我不能相信我忘了那個。它以C編寫。 – alternative 2009-11-25 23:38:55
如果你會考慮其他框架,維基百科有一個C的單元測試框架列表:http://en.wikipedia.org/wiki/List_of_unit_testing_frameworks#C還有一個叫做autounit的產品,它應該與autoconf很好地結合,目前是beta版。 http://autounit.tigris.org/ http://autounit.tigris.org/files/documents/187/171/autounit.html – 2009-11-26 18:42:52