這種測試用例設計工具,依據軟件的需求說明,生成基于功能需求的測試用例。這種工具所生成的測試用例既包括了測試輸入數據,也包括預期結果,是真正完整的測試用例。
使用這種測試用例設計工具生成測試用例時,需要人工的事先將軟件的功能需求轉化為工具可以理解的文件格式,再以這個文件作為輸入,通過工具生成測試用例。在使用這種測試用例設計工具來生成測試用例時,需求說明的質量是很重要的。
由于這種測試用例設計工具是基于功能需求的,所以可用來設計任何語言、任何平臺的任何應用系統的測試用例。
我們來看一個這類工具的例子——SoftTest。在使用SoftTest生成測試用例時,先將軟件功能需求轉化為文本形式的因果圖,然后讓SoftTest讀入,SoftTest會根據因果圖自動生成測試用例。在這個過程中,工具的使用者只需要完成由功能需求到因果圖的轉化,至于如何使用因果圖來生成測試用例,則完全由Softtest完成。
所有測試用例設計工具都依賴于生成測試用例的算法,工具比使用相同算法的測試人員設計的測試用例更徹底、更精確,這方面工具有優勢。但人工設計測試用例時,可以考慮附加測試,可以對遺漏的需求進行補充,這些是工具無法做到的。所以,測試用例設計工具并不能完全代替測試工程師來設計測試用例。使用這些工具的同時,再人工的檢查、補充一部分測試用例,會取得比較好的效果。
3.2靜態分析工具
一提到軟件測試,人們的第一印象就是填入數據、點擊按鈕等這些功能操作。這些測試工作確實是重要的,但它們不是軟件測試的全部。與這種動態運行程序的測試相對應,還有一種測試被稱為靜態測試,也叫做靜態分析。
進行靜態分析時,不需要運行所測試的程序,而是通過檢查程序代碼,對程序的數據流和控制流信息進行分析,找出系統的缺陷,得出測試報告。
進行靜態分析能切實提高軟件的質量,但由于需要分析人員閱讀程序代碼,使得這項工作進行起來工作量又很大。對軟件進行靜態分析的測試工具在這種需求下也就產生了?,F在的靜態分析工具一般提供以下兩個功能:分析軟件的復雜性、檢查代碼的規范性。
軟件質量標準化組織制定了一個ISO/IEC9126質量模型,用來量化的衡量一個軟件產品的質量。該軟件質量模型是一個分層結構,包括質量因素、質量標準、質量度量元三層。質量度量元處于質量模型分層結構中的最底層,它直接面向程序的代碼,記錄的是程序代碼的特征信息,比如函數中包含的語句數量、代碼中注釋的數量。質量標準是一個概括性的信息,它比質量度量元高一級,一個質量標準由若干個質量度量元組成的。質量因素由所有的質量標準共同組成,處于軟件質量模型的最高層,是對軟件產品的一個總體評價。具有分析軟件復雜性功能的靜態分析工具,除了在其內部包含上述的質量模型外,通常還會從其它的質量方法學中吸收一些元素,比如Halstend質量方法學、McCabe質量方法學。這些靜態分析工具允許用戶調整質量模型中的一些數值,以更加符合實際情況的要求。
原文轉自:http://www.anti-gravitydesign.com