現在我遇到了一個測試問題, 我們開發了一個使用C++的平臺,這個平臺包括2層,一個是引擎層,另一個是小部件層,我是一個小部件層的開發者, 客戶端應用程序使用的小部件層(這些應用程序是我們的產品),現在的問題是這樣的:如何編寫小部件代碼的單元測試?
1,我們想爲小部件層添加一些單元測試來提高整個平臺的質量和可靠性,但是事實上,這個平臺已經發布了幾個版本,那麼現在什麼樣的單元測試最適合我們的項目呢?要在各種驗證/錯誤輸入/路徑覆蓋/壓力中添加一些單元測試,或添加一些模擬客戶端場景的單元測試?我認爲前者可以很好地提高代碼覆蓋率,但是我也會考慮如果我們能夠模擬客戶端在應用程序中如何使用這些API,那麼這些單元測試對我們的平臺而言可能更有意義,對嗎?
2,正如我之前提到的,我在上面的widget層中,依賴於引擎層,但我們沒有權限引擎層代碼,並且幾乎所有的widget API都可以調用引擎層,所以它是我們很難爲這些api實現好的路徑覆蓋單元測試,因爲我們對引擎層代碼沒有想法(也沒有文檔),但是我仍然想問,有沒有什麼方法,工具或框架可以讓別人寫出高質量的單元測試覆蓋那些黑盒子API的路徑?
我可以建議將標題改爲「如何編寫Widget代碼的單元測試?」或類似的東西。 – 2010-09-08 09:25:58