四、測試套件實現測試流程.
當具備持續集成和測試自動化的能力后,需要一套測試體系來支持和維護您的測試流程,確保測試過程是符合流程、標準,而且是持續改進的。
(一)、為什么需要一個流程?很多公司投入了大量的測試經費,然而還是沒有收到預期的收益。這可能是因為:缺乏足夠的測試計劃、缺乏測試的優先次序、工作的重復、沒有利用工具來配合人工測試、沒有利用測試自動化工具、測試自動化運用不夠或者運用的不恰當等等。所以需要有測試套件的實施流程。
(二)、 為什么需要工具?
工具能夠加快測試的進度,可以把控制和管理引入整個測試過程,比如MI公司的TestDirector就是一個很好使用的測試管理系統,而且是web版的。測試管理系統有很多的作用:
測試管理和報告:測試管理系統能夠保證系統開發和測試流程你不的問題盡快得到解決。
審核跟蹤的憑據:TestDirector存貯了所有的測試結果,全部修改被寫進一個審核跟蹤器里,如:時間、日期、修改人、錯誤授權,能夠很清晰的看到把錯誤當皮球踢不負責人的整個過程。
提高測試覆蓋率:通過自動化測試工具的數據驅動來測試功能,可以提高測試覆蓋率。
(四)、測試套件--測試體系的主要目標(5W3H)
測試體系的建立是為了確保軟件測試的全部活動按計劃、按標準的進行,是測試人員的行動綱領和職責指導。也就是有這樣的一個體系、流程來指導他們的工作,培養了他們的主人翁責任感。讓測試工作開展得有條不紊。
主要的內容有:測試流程,測試方針、測試規程、文檔模版、質量標準、測試工具、測試技術和方法等內容。
測試體系的主要目標(5W3H):目的是告訴與測試活動相關的人員在什么樣的時間,什么樣的地點,由誰來做,做什么樣的事情,為什么做,如何做,怎么樣才算完成,缺陷任何分析和預防等?梢院喎Q:5W3H.
1、為什么要測試系統(Why) ?
測試新功能:每發布一個新的版本,首先要去測試它的新功能。創建回歸測試的測試套件驗證缺陷修改:在這個測試周期中要驗證上個測試周期的缺陷修改情況。驗證系統性能檢測新硬件
2、如何測試系統(How)? 系統測試:檢查系統總體功能
壓力測試:在反復相同的操作下、或其他壓力條件下,比如:低內存空間/低磁盤空間等,檢測軟件的反應。
安裝測試:檢驗系統安裝得是否正確,而且與已安裝的軟件不發生沖突。
安全測試:測試系統存取權限和授權的級別
邊界測試:利用數據邊界和系統邊界檢驗程序
3、什么時候進行測試(When)? 在開發流程的哪個階段開始測試?
在需求規格說明書一出來,或項目管理計劃一出來,測試人員就開始有事做:寫測試計劃、編寫測試用例、執行測試、測試報告和缺陷分析。很多老板以為要編碼結束后才開始測試工作,所以不肯有專職的測試人員,怕他們在項目前期沒有事做。
前提條件和附屬條件是什么?
多長時間需要進行一次測試?
交貨的時間表是什么?
什么時候停止測試? 什么時候停止測試是很有學問的,很多公司多半是在沒有時間、沒有資金是,老板或項目經理說了停止就停止。事實上根據bug預測、bug發現率與錯誤修正率的時間曲線來決定的。只有當這個曲線達到水平線后方才可以停止。4、誰來實施測試(Who) ?硬件:具備什么樣的服務器、客戶端及其網絡環境。
軟件:安裝什么樣的軟件環境最適合作這些測試。
體系架構:測試的類別有很多,不同的人進行不同的測試,比如開發人員做單元測試,測試人員作功能測試、集成測試、非功能性測試,而讓市場、需求人員、客戶去做驗收測試
數據:需要什么樣的測試數據來實施這一次的測試,這些測試數據的設計。
人力資源:按測試計劃的要求安排相關的人力資源。5、在哪里進行測試(Where) ?在開發服務器上測試?
開發人員可能會叫你在測試服務器上測試,事實上這樣對測試效率和測試人員的情緒影響是很大的,因為開發服務器是一個極不穩定的環境。而且也沒明顯的測試階段。
建立一個測試實驗室 ?
對于有很多項目的公司,建立一個測試實驗室是很必要的,主要用來做環境的兼容性測試,壓力、性能測試,驗收測試等等。
為了減輕測試者本地機器的負荷,使之在進行測試的同時可以做其他測試,
遠程定時執行測試的機制。6、測試什么(What) ?自動測試中應用程序的主要特點是什么?
按重要性將這些特點排序?
自動測試各部分的相對重要性?
總體質量目標是什么(可用性,功能,可靠性,性能等等)?
文章來源于領測軟件測試網 http://www.kjueaiud.com/