P2—軟件測試生命周期&軟件測試流程
1.軟件測試生命周期模型
(1)瀑布型生命周期模型
介紹:
在1970年人類整理了第一個軟件生命周期,即瀑布型生命周期模型也叫瀑布模型。
規定了它們自上而下、相互銜接的固定次序,如同瀑布流水,逐級下落,具有順序性和依賴性。
每個階段規定文檔并需進行評審。
分析
需求分析階段——輸出規格說明書(原型圖)————基本不用這個模型
瀑布模型特點:自上而下,有序性
缺點:測試介入比較晚——回溯成本高;測試周期比較長
(2)V模型
介紹:
RAD (Rap Application Development,快速應用開發)模型是軟件開發過程中的一個重要模型,
由于其模型構圖形似字母V,所以又稱軟件開發的V模型。
它通過開發和測試同時進行的方式來縮短開發周期,提高開發效率。
提示:
V模型測試是在需求階段介入
(3)敏捷開發模型
介紹:
從1990年代開始逐漸引起廣泛關注,是一種以人為核心、迭代、循序漸進的開發方法。
強調以人為本,專注于交付對客戶有價值的軟件。是一個用于開發和維持復雜產品的框架。
就是把一個大項目分為多個相互聯系,但也可獨立運行的小項目,并分別完成,在此過程中軟件,一直處于可使用狀態。
提示:
特點:快
弱化文檔,通過人與人之間的溝通實現需求分析
2.軟件生命周期的各個階段
(1)問題的定義以及規劃
主要確定軟件的開發目的及其可行性。制定項目總體開發計劃。
(2)需求分析
在確定軟件開發可行的情況下,對軟件需要實現的各個功能進行詳細分析,明確客戶的需求,輸出需求規格說明書終版(原型圖),提交評審。
提示:需求規格說明書簡寫(SRS)
(3)設計
把需求分析得到的結果轉換為軟件結構和數據結構,形成系統架構。
概要設計:主要是架構的實現,指搭建架構、表述各模塊功能、模塊接口連接和數據傳遞的實現等項事務。
詳細設計:對概要設計中表述的各模塊進行深入分析等,其中需要包含數據庫設計說明。
(4)編碼
按照詳細設計好的模塊功能表,編程人員編寫出計算機可運行的程序代碼
(5)軟件測試
在軟件設計完成后要經過嚴密的測試,以發現軟件在整個設計過程中存在的問題并加以糾正。
測試的方法主要有白盒測試跟黑盒測試兩種。建立詳細的測試計劃并嚴格按照計劃進行。
單元測試:主要是測試程序代碼,為的是確保各單元模塊被正確的編譯,比如有具體到模塊的測試,也有具體到類,函數、方法的測試等。--- 般是開發來完成
集成測試:單元測試后,將各單元組合成完整的體系,測試軟件單位之間的接口是否正確、數據能否正常傳遞。---比如說注冊和充值這兩個功能是否能夠連通~
系統測試:把軟件系統搭建起來,按照軟件規格說明書中所要求,測試軟件其性能功能等是否和用戶需求相符合,在系統中運行是否存在漏洞等。----根據測試用例,進行完整的系統測試。
驗收測試:主要就是用戶在拿到軟件的時候,在使用現場,會根據前邊所提到的需求,以及規格說明書來做相應測試,以確定軟件達到符合效果的。--用戶對軟件進行驗收。
(6)運行維護
軟件維護是軟件生命周期中持續時間最長的階段。在軟件開發完成并投入使用后,由于多方面的原因,軟件不能繼續適應用戶的需求。
要延續軟件的使用壽命,就必須對軟件進行維護。軟件的維護主要包括糾錯性維護和改進性維護兩個方面。
3.軟件測試工作流程圖

提示:
測試計劃:測試工作統籌安排(測試內容,哪些人,任務分配,測試環境、工具、時間安排) --測試負責人/主管/組長
編寫測試用例:什么測試用例---具體怎么來進行測試的文檔
軟件在符合什么的條件下可以發布:剩余bug數量很少+用例執行覆蓋率
發布流程:開發打包--》運維/運營/開發--》部署到生產環境,實現發布上線
開發環境:開發人員寫代碼的環境
測試環境:測試人員進行測試的環境(1個或1個以上)
預發布環境(UAT環境):驗收測試(UAT測試)進行的環境
生產環境:真實用戶使用的環境
4.A/B測試
先發布的功能先讓A部分的用戶進行更新,再根據用戶的反饋,再更新B部分的功能
5.灰度測試
先發布部分功能,然后看用戶的反饋,再去發布另外一部分的功能的更新



浙公網安備 33010602011771號