首次進行測試C++ Test之前,一定要了解C++ Test的執行原理,C++ Test可以對C++源代碼進行三種不同的測試,其分為:白盒測試、黑盒測試以及回歸功測試,這些都是一些常用方法希望本文能給您帶來一些幫助。
針對所有的類的成員函數包括:公共的、保護的以及私有類型的)進行測試。測試的方法是判定當輸入一個非法的參數時,有關函數能否正確處理。Record命令)在此狀態下軟件針對指定的文件、類或者是函數自動生成測試用例。黑盒測試不對源代碼進行分析,並且只針對類的公共接口函數進行測試。Play命令)
在此狀態下軟件不自動生成測試用例,而是直接運行在"測試用例編輯器"中當前已有的測試用例手工添加的)。回歸功測試在修改源代碼後用原有的測試用例進行重新測試。Play命令)
建議在實際使用中首先用Record命令執行一遍測試C++ Test,讓軟件根據函數自動生成相應的測試用例,然後再根據需要手工添加一些測試用例,最後再通過Play命令執行一遍黑盒測試。
示例一
假設我們要測試如下一個類的成員函數:int mode2(int nParam),則在進行白盒測試時軟件會自動為我們生成如下6個測試用例:可以看出,軟件測試用例的生成主要還是測試一些邊界值,例如最大值、最小值、0等。
示例二
假設我們要測試如下一個類的成員函數:void strcpy(char* dest, char const * src),則軟件會自動生成如下9個測試用例:
- dest = NULL, src = NULL
- dest = "yPqKIJ!u_", src = NULL
- dest = "", src = NULL
- dest = NULL, src = "h)zn9b"
- dest = "BsmC,/i=zI6CT}pX", src = "HcI{BeP(J"
- dest = "", src = "% i?~TnON"
- dest = NULL, src = ""
- dest = "($MN, src = ""
- dest = "", src = ""
可見,假如我們的代碼在實現時沒有對各種可能情況尤其是邊界條件)進行非凡處理的話,則通過C++Test可以方便地發現這些潛在的問題。此外,對於一些非凡的測試情況,我們還可以手工創建測試用例。此外,采用測試C++ Test也可以幫助我們檢查程序的編碼情況,判定是否嚴格按編碼規范進行開發。使用
測試C++ Test的使用比較簡單,即可以針對一個VC工程進行全面的測試,也可以一次只對一個C/C++源文件進行測試。在試用中發現,假如項目比較大時,最好不要直接對一個工程進行自動測試,而應按文件一個一個地測試,否則可會會導致程序死掉。由於其是采用Java技術開發的,所以在使用時最好使用運算速度較快的機器。
測試C++ Test是Parasoft公司出品的一個針對C/C++源代碼進行自動化單元測試的工具。它可以對源代碼進行三種測試:白盒測試、黑盒測試以及回歸功測試。 白盒測試測試C++ Test對C/C++源代碼進行分析,針對所有的類的成員函數包括:公共的、保護的以及私有類型的)進行測試。測試的方法是判斷當輸入一個非法的參數時,有關函數能否正確處理。Record命令)在此狀態下軟件針對指定的文件、類或者是函數自動生成測試用例。
不對源代碼進行分析,並且只針對類的公共接口函數進行測試。Play命令)在此狀態下軟件不自動生成測試用例,而是直接運行在"測試用例編輯器"中當前已有的測試用例手工添加的)。
回歸功測試在修改源代碼後用原有的測試用例進行重新測試。Play命令)建議在實際使用中首先用Record命令執行一遍白盒測試,讓軟件根據函數自動生成相應的測試用例,然後再根據需要手工添加一些測試用例,最後再通過Play命令執行一遍黑盒測試。