軟件測試組織管理小結 軟件測試
為了確保軟件的質量,對圖1的過程應進行嚴格的管理。雖然測試是在實現且經驗證后進行的,實際上,測試的準備工作在分析和設計階段就開始了。
1.測試的過程及組織
當設計工作完成以后,就應該著手測試的準備工作了,一般來講,由一位對整個系統設計熟悉的設計人員編寫測試大綱,明確測試的內容和測試通過的準則,設計完整合理的測試用例,以便系統實現后進行全面測試。
在實現組將所開發的程序經驗證后,提交測試組,由測試負責人組織測試,測試一般可按下列方式組織:
(1)首先,測試人員要仔細閱讀有關資料,包括規格說明、設計文檔、使用說明書及在設計過程中形成的測試大綱、測試內容及測試的通過準則,全面熟悉系統,編寫測試計劃,設計測試用例,作好測試前的準備工作。
(2)為了保證測試的質量,將測試過程分成幾個階段,即:代碼審查、單元測試、集成測試和驗收測試。
(3)代碼會審:
代碼會審是由一組人通過閱讀、討論和爭議對程序進行靜態分析的過程。會審小組由組長,2~3名程序設計和測試人員及程序員組成。會審小組在充分閱讀待審程序文本、控制流程圖及有關要求、規范等文件基礎上,召開代碼會審會,程序員逐句講解程序的邏輯,并展開熱烈的討論甚至爭議,以揭示錯誤的關鍵所在。實踐表明,程序員在講解過程中能發現許多自己原來沒有發現的錯誤,而討論和爭議則進一步促使了問題的暴露。例如,對某個局部性小問題修改方法的討論,可能發現與之有牽連的甚至能涉及到模塊的功說明、模塊間接口和系統總結構的大問題,導致對需求定義的重定義、重設計驗證,大大改善了軟件的質量。
(4)單元測試:
單元測試集中在檢查軟件設計的最小單位—模塊上,通過測試發現實現該模塊的實際功能與定義該模塊的功能說明不符合的情況,以及編碼的錯誤。由于模塊規模小、功能單一、邏輯簡單,測試人員有可能通過模塊說明書和源程序,清楚地了解該模塊的I/O條件和模塊的邏輯結構,采用結構測試(白盒法)的用例,盡可能達到徹底測試,然后輔之以功能測試(黑盒法)的用例,使之對任何合理和不合理的輸入都能鑒別和響應。高可靠性的模塊是組成可靠系統的堅實基礎。
(5)集成測試:
集成測試是將模塊按照設計要求組裝起來同時進行測試,主要目標是發現與接口有關的問題。如數據穿過接口時可能丟失;一個模塊與另一個模塊可能有由于疏忽的問題而造成有害影響;把子功能組合起來可能不產生預期的主功能;個別看起來是可以接受的誤差可能積累到不能接受的程度;全程數據結構可能有錯誤等。
(6)驗收測試:
驗收測試的目的是向未來的用戶表明系統能夠像預定要求那樣工作。經集成測試后,已經按照設計把所有的模塊組裝成一個完整的軟件系統,接口錯誤也已經基本排除了,接著就應該進一步驗證軟件的有效性,這就是驗收測試的任務,即軟件的功能和性能如同用戶所合理期待的那樣。
經過上述的測試過程對軟件進行測試后,軟件基本滿足開發的要求,測試宣告結束,經驗收后,將軟件提交用戶。
2.測試方法的應用
集成測試及其后的測試階段,一般采用黑盒方法。其策略包括?/p> (1)用邊值分析法和(或)等價分類法提出基本的測試用例;
(2)用猜測法補充新的測試用例;
(3)如果在程序的功能說明中含有輸入條件的組合,宜在一開始就用因果圖法,然后再按以上(1)、(2)兩步進行。
單元測試的設計策略稍有不同。因為在為模塊設計程序用例時,可以直接參考模塊的源程序。所以單元測試的策略,總是把白盒法和黑盒法結合運用。具體做法有兩種:
a、先仿照上述步驟用黑盒法提出一組基本的測試用例,然后用白盒法作驗證。如果發現用黑盒法產生的測試用例未能滿足所需的覆蓋標準,就用白盒法增補新的測試用例來滿足它們。覆蓋的標準應該根據模塊的具體情況確定。對可靠性要求較高的模塊,通常要滿足條件組合覆蓋或路徑覆蓋標準。
b、先用白盒法分析模塊的邏輯結構,提出一批測試用例,然后根據模塊的功能用黑盒法進行補充。
3.測試的人員組織