軟件測試基礎理論(一)


關於基礎理論一二三,都已經重新整理更新到了基礎知識總結,傳送門:http://www.cnblogs.com/imyalost/p/6144862.html

 

1、什么是軟件

定義:計算機系統中與硬件相互依存的一部分(程序+數據+相關文檔)

程序:按事先設計的功能和性能要求執行的指令序列

數據:使程序能正常操縱信息的數據結構

文檔:與程序開發、維護和使用有關的圖文資料

 

2、軟件的生命周期

可行性研究和計划、需求分析、概要設計、詳細設計、實現(開發階段)、

組裝測試、確認測試、使用和維護

 

3、什么是軟件測試

定義:軟件質量保證的一種手段

目的:發現錯誤以及避免這些錯誤的發生

 

4、軟件測試的方法

1)用試題檢查法

2)用新舊兩個系統做平行處理檢查

3)軟件測試自動化工具測試

 

5、軟件測試有哪幾個階段(任務)

1)制定測試大綱(測試計划)

2)制作測試數據(測試方案)

3)單元測試(程序測試,一般由開發人員進行)

4)功能測試/性能測試(這兩個階段重合性較大,可以歸為一類)

5)集成測試(子系統測試)

6)系統測試

7)驗收測試

8)測試報告

9)向下階段提交系統運行、維護用戶手冊

備注:可以分為產品→開發→測試→運維

 

6、軟件測試工作流程圖

立項階段→需求階段→設計階段→編碼&單元測試階段→集成測試階段→系統測試階段→驗收測試階段→結項總結階段

 

7、自動化測試的優點

提高工作效率,減少人的手工勞動,節省時間和成本

 

8、自動化測試的過程

需求分析→測試計划→框架搭建→測試—調試測試→評估

 

9、自動化測試的優點

1)能執行更多更頻繁的測試, 使某些測試任務執行方式更高效

2)能執行一些手動測試困難或者不能做的測試

3)任務自動化,使測試人員投入更多精力設計測試用例,提高測試准確性和人員積極性

4)具有一致和可重復性特點,更客觀,提高軟件信任度,仍存在一定局限

5)不能取代手工測試,不能自動化所有的測試(如只是偶爾執行測試,或需求經常變動,不穩定,或者需要大量手工參與時)

6)自動化測試工具只能執行命令,而手工可以在測試中判斷測試的輸入是否正確,以及改進測試,還可處理意外事件

7)對質量依賴較大,在確保質量的前提下,實施自動化才有意義

8)自動化測試需要在整個測試系統成熟穩定后,工作效率才會隨着測試執行次數的增加而提高

9)自動化測試的成本可能高於手工測試 

 

10、自動化測試技術

 錄制/回放、腳本技術、數據驅動(data driven)、關鍵字驅動(keyworddriven)、業務驅動

 

11、自動化測試的級別

1)捕獲和回放

2)捕獲、編程和回放

3)編程和回放

4)數據驅動的測試

5)使用動作詞的測試自動化

 

12、自動化測試方案選擇需要考慮的方面

1)項目的影響(能否幫助項目進度、覆蓋率、風險)

2)復雜度(是否容易實現,包括數據和其他環境等)

3)時間(實現自動化需要多少時間)

4)早期需求和代碼的穩定性

5)維護工作量(代碼能否能長期保持相對穩定)

6)覆蓋率

7)資源(是否擁有足夠的人力、硬件和數據資源來運行自動化測試)

8)執行(負責執行的人員是否有足夠的技能和時間去運行)

 

13、自動化測試的重點

1)搭建測試環境,測試場景

2)測試用例

3)測試結果的驗證

4)自動化測試的流程以及執行

 

14、自動化測試需要解決的問題

1、工具的選擇

2、測試用例腳本編寫

3、測試腳本的管理

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM