测试知识整理——基础篇
1、軟件的概念——程序+數據+文檔=軟件
1)運行時,能夠提供所要求功能和性能的指令或計算機程序集合。
2)程序能夠滿意地處理信息的數據結構。
3)描述程序功能需求以及程序如何操作和使用所要求的文檔。
?以開發語言作為描述語言,可以認為:軟件=程序+數據+文檔
2、軟件→軟件危機→軟件工程
軟件危機:軟件危機泛指在計算機軟件的開發和維護過程中所遇到的一系列嚴重問題。
軟件工程:軟件工程是研究和應用如何以系統性的、規范化的、可定量的過程化方法去開發和維護軟件,以及如何把經過時間考驗而證明正確的管理技術和當前能夠得到的最好的技術方法結合起來。
3、軟件測試
?
定義1(Hetzel):評價一個程序和系統的特性或能力,并確認它是否達到預期的結果,檢查是否滿足規定的需求。? ? ? ? ? ? ? ? ? ? ?
定義2(Myers):測試是為發現錯誤而執行程序的過程。
定義3(現代):?是對軟件需求分析、設計、編碼的最終復查的一系列過程,是軟件質量保證的關鍵步驟。
4、測試目的
1、?發現缺陷,提高質量:發現并糾正軟件中的錯誤來提高軟件質量(?正面測試、反面測試)
2、?驗證是否滿足需求:驗證軟件的功能和性能等滿足需求(功能需求、性能需求、可靠性需求等)
3、?建立軟件質量的信心:測試報告提供軟件質量的相關信息,建立起對軟件質量的信心(正面測試是否充分、?反面測試是否充分)
5、測試工作流程
??軟件測試過程包括:
??????????????????????????????測試計劃和控制
??????????????????????????????測試需求分析和用例設計
??????????????????????????????實現和執行測試用例
??????????????????????????????評估出口準則和報告
??????????????????????????????測試結束活動
?
| 計劃 | 控制 | 分析 | 設計 |
| 識別測試任務 定義測試目標 定義為達到測試目標和任務所必須的測試活動 ? | 測試過程的監控應該貫穿所有測試活動 應該及時通過監控信息的反饋,適時的調整測試活動,比如調整測試計劃 應該制定一些可度量的監控目標,從而監控測試過程 ? | 評審測試依據(比如需求、系統架構、設計和接口說明等) 評估測試依據和測試對象的可測性 通過對測試項、規格說明、測試對象行為和結構的分析,識別測試條件并確定其優先級 ? | 設計測試用例并確定優先級 確定測試條件和測試用例所需的必要的測試數據 規劃測試環境的搭建和確定測試需要的基礎設施和工具 ? |
?6、基于生命周期的軟件測試
V模型
V模型是軟件開發瀑布模型的變種,它反映了測試活動與分析和設計的關系
?
?
V模型特點:
???????????????????定義:基本的開發過程和測試行為
???????????????????標明:測試過程中存在不同類型、不同級別的測試
???????????????????描述:不同測試階段和開發過程期間各階段的對應關系
W模型:
?
?
W模型特點:
?????????????????增加了軟件各開發階段中應同步進行的 驗證 (verification)和 確認(validation)?活動。
?????????????????基于“盡早地和不斷地進行軟件測試”的原則。
V模型和W模型的局限性
- 串行活動,無法更好適應變更:把軟件的開發視為需求、設計、編碼等一系列的串行活動,無法解決需求變更等變更調整。
- 線性的前后關系,無法有效支持迭代:開發和測試保持線性的前后關系,上一階段完成才能開始下一階段,無法有效,快速支持產品迭代。
- 測試完整性不足:順序模型中沒有很好體現測試流程的完整性。
?生命周期各個階段的測試內容
???????需求階段
???????????評估被測軟件的風險,以此決定所采用的測試力度
- 軟件工程統計結果發現
??50%以上的系統錯誤是由于錯誤的需求或缺少需求導致的
??超過80%的開銷花在追蹤需求的錯誤上
- 需求測試貫穿了整個軟件開發周期,通過需求測試
??可指導軟件測試的各個階段
??可幫助我們設計整個測試的進行,測試計劃怎樣安排,測試用例怎樣選取,軟件的確認要達到哪些要求等
????????設計階段
設計階段的測試活動
- 在概要設計階段,測試人員應闡述測試方法和測試評估準則,編寫測試計劃,成立測試小組,安排具有里程碑的測試日程
- 在詳細設計階段,測試人員要開發或獲取確認支持工具,生成功能測試數據和測試用例
設計階段的評審
- 對實際階段處理的完整性進行正式的評價
????????編碼階段
在編程階段完成測試用例開發,對程序進行實際的測試:
- 系統是否可維護
- 解決的首要問題是編碼是否和設計一致
- 系統的規格說明是否正確地實現
- 編碼是否按照既有的標準進行
- 是否有充分的測試計劃評價可執行的程序
- 程序是否提供了足夠的文檔資料
- 程序內部是否有足夠的注釋等
?????????測試階段
- 在全生命周期軟件測試方法中,由于在需求、設計、編碼階段都進行了測試,因此測試階段的問題相對傳統的軟件測試中的問題要少一些
- 在測試階段要進行第三方的正式確認測試,檢驗所開發的系統是否能按照用戶提出的要求運行
- 在測試階段要使得用戶能成功地安裝一個新的應用系統來進行測試
? ? ?
7、軟件測試分類
四種軟件測試級別???
組件/單元測試、集成測試、系統測試、驗收測試
???
?
?
?
? ? ? ? ? ? ? ? ? ??
?
轉載于:https://www.cnblogs.com/jingzhenhua/p/6170221.html
總結
以上是生活随笔為你收集整理的测试知识整理——基础篇的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [linux] 线程和wait命令,sl
- 下一篇: 实验吧 登录一下好吗