軟件測試用例生命周期

發表于:2011-08-12來源:未知作者:領測軟件測試網采編點擊數: 標簽:測試用例
完整的測試用例生命周期過程,它通常有測試條件標識、測試用例設計、測試用例實現、測試用例的執行,以及測試用例管理等幾個階段組成。由于不同的公司的質量方針和測試策略的不同,采用的測試用例過程可能會有所不同,或者側重點不同。下圖是測試用例生命周期

  完整的測試用例生命周期過程,它通常有測試條件標識、測試用例設計、測試用例實現、測試用例的執行,以及測試用例管理等幾個階段組成。由于不同的公司的質量方針和測試策略的不同,采用的測試用例過程可能會有所不同,或者側重點不同。下圖是測試用例生命周期的瀑布結構。

  圖1 測試用例生命周期

  測試用例通常是針對被測系統的功能模塊來進行設計開發的。每個測試用例的設計都會涉及這五個過程。而且,測試用例的這五個階段是有時間順序要求的,例如:在設計測試用例之前,需要首先標識測試條件;在實現測試用例以前,需要設計測試用例。測試用例過程既可以是正式化的,比如對每個階段的輸出進行文檔化,也可以是非正式化的。具體輸出文檔的詳細程度,可以根據組織和項目的實際情況而定。

  1 測試條件標識

  測試用例過程的第一步是確定測試什么(測試條件),并且對測試條件進行優先級的劃分。測試條件指的是可以通過測試進行驗證的條目或者事件。針對測試系統,會有很多不同的測試條件。根據不同的測試條件,可以進行不同的測試類型分類,例如:功能測試、性能測試、可用性測試等。

  在測試條件標識過程中,可以采用不同的測試技術,嚴格而系統的來幫助測試人員獲取測試條件,例如:黑盒測試中的等價類劃分、邊界值分析、因果圖分析等,以及白盒測試中的語句覆蓋、分支覆蓋、條件覆蓋等。

  標識測試條件,就是識別需要測試的條目和事件??梢酝ㄟ^不同的方式來對它們進行描述,比如通過簡單的句子描述、通過表格的方式或者通過控制流圖的方式等描述。測試條件識別活動最好和通用的V模型左邊的開發活動同時進行。

  2 測試用例設計

  測試用例設計確定了如何來測試已經識別的測試條件。測試用例指的是針對某個測試目標,而進行的一系列測試步驟。測試用例設計會產生一系列包含特定輸入數據、預期結果和其它相關信息的測試用例。

  測試設計的主要挑戰是確定測試預期結果。為了確定測試預期結果,測試人員不僅需要關注測試輸出,同時也需要注意測試數據和測試環境的后置條件。

  假如測試依據可以清楚的定義,測試設計理論上將是比較簡單的。但是,測試依據通常情況都是模糊不清的,至少描述是缺少覆蓋率的。另外,即使清楚的描述了測試依據,測試輸入和測試輸出的復雜相互關系也會使得定義測試預期結果非常困難。假如測試用例沒有測試的預期結果,則測試用例對于測試結果的對錯判斷是毫無意義的,也無法提供有效的缺陷報告和增加客戶對系統的使用信心。

  測試預期結果可以是各種各樣的,包括需要創建或者輸出的結果,也可以是需要更新或者變更的結果,也可以是刪除的結果。每個測試用例都應該清楚的描述測試的預期結果。也存在一些特殊情況,在測試用例中沒有描述測試的預期結果,為了檢查軟件是否正確的實現或者工作,必須對實際的輸出結果進行仔細的檢查和驗證。這樣,就需要測試人員具有被測系統相關的豐富的知識和經驗,才可能對軟件系統的測試輸出作出正確的評估。假如測試輸出結果評估認為是正確的,那么就可以作為測試用例的期望輸出結果。

  同樣,測試用例的設計,以及測試用例預期結果的設置,應該和通用V模型左邊相應的開發活動相對應。

  3 測試用例實現

  測試用例實現的過程包括準備測試腳本、測試輸入、測試數據以及預期結果等。測試腳本指的是按照標準的語法組織數據或者指令,測試腳本一般保存在文件中,用于自動化測試。測試輸入和測試期望輸出也可以作為測試腳本的一部分,也可以保存在其他文件或者數據庫中。

  測試執行之前,首先必須滿足測試前置條件。比如一個測試用例需要用到文件中的一些數據,那么這個文件在測試執行時必須已經創建。測試前置條件也包括特定的測試硬件和軟件,比如測試一個網絡打印機,那么在測試之前,需要建立這樣的測試環境,和打印機相關的網絡是正??捎?。測試預期結果也可以保存在文件中,用于自動化測試。而對于手動測試,可以直接在測試用例中標識。

  4 測試用例執行

  通過運行測試用例來對被測系統進行測試。對手動測試來說,測試執行主要是測試人員坐到被測系統前面,參考測試用例的步驟來進行測試執行。測試人員輸入測試輸入、檢查測試輸出、比較測試預期結果和實際結果、記錄在測試過程中發現的問題等等。而對于自動化測試過程,測試執行可能是打開測試工具,運行測試用例腳本和測試腳本等,通過自動化的方式來記錄測試結果。

  必須仔細檢查每個測試用例執行的實際輸出結果,根據測試預期結果來判斷被測系統是否能夠正確的工作。有些測試結果的比較可以在測試執行中就可以進行,而有的測試結果需要在測試執行完成以后才能進行比較。

  假如測試實際輸出結果和測試預期結果是一樣的,那么認為測試用例執行是通過的。假如不一樣,那么測試用例執行失敗,或者說軟件系統存在問題。當然,這是非常簡單的比較。更加正確的說法是假如測試結果和測試期望不一致,需要進一步的檢查。比如可能是軟件存在缺陷,也可能是測試用例本身存在問題,或者是測試用例中的測試預期結果存在問題,甚至是由于測試環境存在問題而引起的。所以,在比較測試結果的時候,需要從不同的方面來確認具體的問題來源。

  5 測試用例管理

  1)測試用例組織

  任何一個項目,其測試用例的數目都將是非常龐大的。如何來組織、跟蹤和維護測試用例是一件非常重要的事情。在整個測試過程中,可能會涉及不同測試類型的測試用例。如何來組織測試用例,是測試成功與否的一個重要因素,也是提高測試效率的一個重要步驟。

  測試用例的組織,可以用不同的方法來進行組織或者分類:

  按照軟件功能模塊組織:軟件系統一般是根據軟件的功能模塊來進行工作任務分配的。因此,根據軟件功能模塊進行測試用例設計和執行等是很常用的一種方法。根據模塊來組織測試用例,可以保證測試用例能夠覆蓋每個系統模塊,達到較好的模塊測試覆蓋率。

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97