到底是只為類的公用 接口編寫測試用例(黑盒測試)還是要兼顧類的私有成員(白盒測試),是一個有爭議的問題。通常來說,黑盒測試比白盒測試粗糙,它們只能檢查一個操作的最終 結果,不能檢查內部中間狀態,它們對于被修改的測試代碼比較遲鈍。剛才提到的光線測試功能可能被全部重寫(比如原先的版本運行效率不夠),但是它返回的結果沒有變化。這時,白盒測試用例就需要跟著重寫,然而黑盒測試可以繼續用來檢測代碼修改后,所產生的結果是否與原先一致。
因此,我們認為自動化測試中,測試范圍只要包括類的公有成員就夠了,畢竟,類的內部修改比它接口修改要頻繁得多。
回歸測試
特別是在游戲開發領域,大多數情況下,把測試結果和用例編寫者提供的數據手工作比較是不太現實的。例如,檢測與復雜的幾何體碰撞的交點,人工提供相關測 試數據幾乎不可能。相反,將測試結果與早期代碼產生的結果數據相比較,被稱為“回歸測試”。用例編寫者可以評審參考數據,例如,使用簡化圖形的碰撞物體,如果被證實是正確的,它就可以一直用于測試。這樣,自動化測試可以幫助你確認新代碼產生的結果與原先的一致。
延伸閱讀
文章來源于領測軟件測試網 http://www.anti-gravitydesign.com/