軟體測試案例分析

shbwf發表於2009-04-17

緣於軟體生產的特性,軟體測試是軟體生產的一個重點和難點。軟體測試具有四個層次的作用:找錯、確認、組裝和評估,其中確認和評估的意義與難度在規模化的軟體生產中遠遠大於找錯和組裝。軟體生產迫切需要脫離手工作坊方式的軟體除錯,在規範化軟體測試的基礎上實現規模化軟體測試,達到提高軟體產品質量、降低軟體生產成本。軟體測試的方法學和軟體測試的管理學應是軟體測試工作者關注的重點。

軟體質量已成為開發商和使用者共同關注的焦點。沒有質量保證的軟體產品,就沒有市場競爭力。軟體測試是否充分、有效,直接影響到軟體產品的質量。西安軟體工程技術研究中心作為第三方軟體評測機構,按照國家相關標準,為軟體開發企業和軟體使用者提供軟體評測技術服務。現以西安協同數碼股份有限公司開發的SynchroFlow工作流管理系統的輔助開發工具FormDesigner3.0為例介紹西安軟體工程技術研究中心的測試流程。

  只有正確、迅速、準確地處理這些缺陷,才能消除軟體缺陷,保證在要釋出的軟體中滿足軟體需求。研究中心制訂了科學規範的測試流程,通過規範的軟體測試服務,為軟體企業和軟體使用者提供高質量軟體評測服務。我們把軟體測試專案中的活動一般分為測試計劃、測試設計、測試開發、測試執行和測試評估這五個步驟來組織的。

  一、任務委託

  收到軟體開發企業或軟體使用者的測試需要後,我中心派出測試工程師與使用者進行測試需求溝通與交流、商討並簽訂《軟體測試技術合同》、《軟體委託測試合同》和《保密合同》。使用者將根據合同工作內容,填寫《軟體測試登記表》,提交《軟體規格說明書》和《軟體使用手冊》。

  二、軟體測試計劃

  測試計劃中我們主要確定四方面內容:

  1、必須進行那些測試?

  2、測試在何時開始,希望何時通過以及測試日程安排;

  3、測試在哪裡進行?換句話說,就是測試將在何種軟、硬體配置的環境下執行?

  4、確定軟體測試方法和軟體測試工具

  以上這些內容確定後便可以著手定義測試輸入條件,確定測試策略和劃分測試功能點、設計測試用例規劃。在此過程中還要考慮測試用例的屬性和該測試是否進行迭代測試。

  在 FormDesigner3.0專案測試過程中,使用者要求我們對FormDesigner3.0 進行功能測試。根據FormDesigner3.0的功能點、參照其使用者手冊、以及使用者要求進行迴歸測試的特性,我們在制定測試計劃時,需要考慮測試用例的可複用性。我們將FormDesigner3.0劃分為12個模組,準備開發的測試用例,將全部覆蓋FormDesigner3.0所有功能點。

  在組織FormDesigner3.0的測試過程中我們用Rational TestManager來管理測試過程,通過使用Rational TestManage工具自動跟蹤整個專案的質量和需求狀態來分析所造成的針對測試用例的影響,並能獲得基特定角度的測試結構資料, 並且利用這些資料對於測試工作進行決策。

  三、測試設計

  測試設計是對每個測試用例進行詳細的測試步驟設計,設計時力求覆蓋所有功能點。設計的測試步驟,就是實施測試時的操作步驟。測試設計還包括選擇檢查點、設計檢查位置、定義測試用例的條件和確定測試通過的標準。對於要求進行迴歸測試的軟體用例的設計要考慮測試用例的複用性和擴充套件性。

  對於FormDesigner3.0,測試用例設計這一環節中我們採取點面結合的方式進行測試,所謂就是軟體系統的業務流程要完整,而就是所測系統的所有功能點要全面,同時測試設計時還要考慮到要進行迴歸測試,根據計劃和測試用例的可執行性、可擴充套件性以及可迭代性我們將 FormDesigner3.0劃分成12個模組來設計用例,共計設計了272個測試用例,所設計測試用例嚴格遵照《FormDesigner3.0需求規格說明書》和《FormDesigner3.0使用者手冊》並覆蓋了FormDesigner3.0所有的功能點。

  四、測試實現

  測試實現是根據測試用例設計的測試步驟進行具體的測試準備,即通過對被測程式的操作,利用軟體測試工具錄製自動執行測試的指令碼並修改指令碼增強指令碼的健壯性。對於不適合自動化測試的功能點我們採用編寫手工測試用例進行補充。經過軟體測試用例設計過程中被測軟體中的部分缺陷可能被發現。對於發現的缺陷經過驗證確認後,用Rational ClearQuest記錄下來進行統一管理。

  考慮到FormDesigner3.0需進行多次迭代,在整個測試實施過程中根據設計好的測試用例,我們利用Rational robot編制了大量的自動化測試指令碼總計265個。對錄製好的測試指令碼為了增強其的健壯性,我們對其進行了多次修改以方便迭代測試的要求。

  五、測試執行

  在測試執行過程中,利用測試工具針對被測軟體自動回放測試用例指令碼,經過多次回放自動化指令碼,測試工具會自動記錄測試資訊。如果指令碼在回放中出現問題,則將測試失敗的資訊及時記錄到缺陷跟蹤資料庫中,並建立優先順序。在執行測試過程中。主要是出現的問題進行驗證、查錯,從而確定缺陷發生發範圍和缺陷發生的環境。

  在經過20多天的第一次測試後,我們把測試結果回饋給委託方,經其驗證修改我們又進行了二次迭代測試。利用已編制好的大量自動化測試指令碼,迭代測試時極大地提高了我們的測試效率,整個測試過程只用了5天時間。迭代測試時我們發現先前提交的缺陷絕大多數都得到了修正,同時我們又發現了新的缺陷,我們把這些資訊及時反饋給委託方,從而幫助委託方對軟體的質量狀況做出準確地判斷和決定。對於發現的缺陷採用缺陷跟蹤管理工具ClearQuest進行全程跟蹤管理,並分配專人進行驗證測試。

  六、測試評估

  測試評估是客戶比較關心的地方,它是對整個測試的完成情況進行總結評估,並對整個專案所產生缺陷的趨勢進行分析,形成測試報告。測試報告中涉及整個測試活動過程,包括測試的軟硬體環境、軟體測試工具、測試人員、測試資源消耗、測試缺陷分類和描述、以及測試缺陷優先順序和對被測軟體的各模組和總體評價。我們使用 Rational TestManager Rational ClearQuese等工具對整個測試過程進行評估,利用工具生成各類圖表來分析測試指令碼執行情況,測試用例覆蓋程度,被測系統在不同訪問量下的響應時間,缺陷的狀態及其分佈情況等必要因素,從而得到整個測試的完成情況和被測應用的質量狀況。以幫助委託方對軟體的質量狀況做出準確地判斷和決定,以便於對軟體系統進一步完善功能和改進軟體中存在的質量問題。 

本文轉載自51Testing軟體測試網—檢視全文:http://www.51testing.com/html/90/n-117090.html

[@more@]

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/11323760/viewspace-1020741/,如需轉載,請註明出處,否則將追究法律責任。

相關文章