發布時間:2020-07-10
設計測試案例的時候,需要有清晰的測試思路,對要測試什么,按照什么順序測試,覆蓋哪些需求做到心中有數。測試用例編寫者不僅要掌握軟件測試的技術和流程,而且要對被測軟件的設計、功能規格說明、用戶試用場景以及程序/模塊的結構都有比較透徹的理解。測試用例設計一般包括以下幾個步驟:
1、測試需求分析
從軟件需求文檔中,找出待測試軟件/模塊的需求,通過自己的分析、理解,整理成為測試需求,清楚被測試對象具有哪些功能。測試需求的特點是:包含軟件需求,是否具有可測試性。
測試需求應該在軟件需求基礎上進行歸納、分類或細分,方便測試用例設計。測試用例中的測試集與測試需求的關系是多對一的關系,即一個或多個測試用例集或測試用例套件對應一個測試需求。
2、業務流程分析
軟件測試,不單純是或不能是只基于功能的黑盒測試,還需要對軟件的內部處理邏輯進行測試。為了不遺漏測試點,需要清楚的了解軟件產品的業務流程。建議在做復雜的測試用例設計前,先畫出軟件的業務流程。如果設計文檔中已經有業務流程設計,可以從測試角度對現有流程進行補充。如果無法從設計中得到業務流程,測試工程師應通過閱讀設計文檔,與開發人員交流,最終畫出業務流程圖。業務流程圖可以幫助理解軟件的業務和數據處理邏輯和數據流向,從而指導測試用例的設計。
從業務流程上,應得到以下信息:
A、 主流程是什么
B、 條件備選流程是什么
C、 數據流向是什么
D、 關鍵的判斷條件是什么
3、測試用例設計
完成了測試需求分析和軟件流程分析后,開始著手設計測試用例。測試用例設計的類型包括功能測試,邊界測試,異常測試,性能測試,壓力測試等。在用例設計中,除了功能測試用例外,應盡量考慮邊界、異常、性能的情況,以便發現更多的隱藏問題。
黑盒測試的常見測試用例設計方法有:場景圖,因果圖分析,判定表法,正交表法,狀態轉換法,等價類劃分,邊界值劃分、和錯誤猜測法等,白盒測試的測試用例設計方法有:語句覆蓋、判定覆蓋、條件覆蓋、判定/條件覆蓋、多重條件覆蓋。在這里主要討論黑盒測試。在設計測試用例的時候可以使用軟件測試用例設計方法,結合前面的需求分析和軟件流程分析進行設計:
功能測試:測試某個功能是否滿足需求的定義,功能是否正確,完備。
適合的技術:由業務需求和設計說明導出的功能測試、等價類劃分
邊界測試:對某個功能的邊界情況進行測試。
適合的技術:邊界值劃分
異常測試:對某些功能來說,其邊界情況無法簡單的了解或某些操作不完全是正確的但又是可能發生的,類似這樣的情況需要書寫相關的異常測試。
適合的技術:由業務需求和設計說明導出的特殊業務流程、錯誤猜測法、邊界值分析、內部邊界值測試、
性能測試:檢查系統是否滿足在需求中所規定達到的性能,性能主要包括了解程序的內外部性能因素。內部性能因素包括測試環境的配置,系統資源使用狀況;外部因素包括響應時間,吞吐量等。
適合的技術:業務需求和設計說明導出的測試
壓力測試:壓力測試又稱強度測試,主要是檢查系統運行環境在極限情況下軟件運行的能力,比如說給一個相當大的負荷或網絡流量給應用軟件兼容測試:測試軟件產品在不同的平臺,不同的工具,相同工具的不同版本下功能的兼容性。
4、測試用例評審
測試用例設計完成后,為了確認測試過程和方法是否正確,是否有遺漏的測試點,需要進行測試用例的評審。
測試用例評審一般是由測試leader安排,參加的人員包括:測試用例設計者、測試leader、項目經理、開發工程師、其它相關開發測試工程師。測試用例評審完畢,測試工程師根據評審結果,對測試用例進行修改,并記錄修改日志。
5、測試用例更新完善
測試用例編寫完成之后需要不斷完善,軟件產品新增功能或更新需求后,測試用例必須配套修改更新;在測試過程中發現設計測試用例時考慮不周,需要對測試用例進行修改完善;在軟件交付使用后客戶反饋的軟件缺陷,而缺陷又是因測試用例存在漏洞造成,也需要對測試用例進行完善。一般小的修改完善可在原測試用例文檔上修改,但文檔要有更改記錄。軟件的版本升級更新,測試用例一般也應隨之編制升級更新版本。測試用例是“活”的,在軟件生命周期中不斷更新與完善。
大多數公司是不建立測試基線庫的,這一點無論是業內的大廠還是小公司實際模式都差不多,就是人盯事模式,需要自己獨立完成一項功能或一套系統的整套的測試工作。這一點我是十分不認可和贊同的,這帶來的問題非常多,今后講獨立開一篇來講解不做基線和做基線的差別。
所以,測試用例的設計本質就是找對測試對象->測試對象組合設計->減少無效組合->得到流程或數據流序列。
針對不同的層,如系統頁面層,頁面內部,具體輸入項,雖然每個層的測試對象不一樣,但你用久了這些用例設計方法就會發現如上圖的"測試用例共性步驟"其實是一樣的,用例設計方法的本質是相同的。
靈活采用設計方法,不要被該圖所迷惑,不是死的,不是教你這層就是這樣固定的設計方法,要活學活用領悟精髓。
這種用例目錄樹結構,可以很好的和用例設計管理工具平臺相結合,達到分層、解耦、重用、調用等用例特性.各層之間不耦合,業務流,操作流和數據流分開。
用例設計是軟件測試人員的一項基本功,是一個立體的系統的不斷細分的工程,只有設計出高效的精簡的用例才會減輕你的工作量提高你的工作效率。
推薦閱讀:
您的信息已成功提交!
我們的客服人員稍后會與您聯系