測試環(huán)境要點:
真實? 干凈? 無毒? 獨立
軟件環(huán)境分類:
軟件開發(fā)環(huán)境和軟件生產(chǎn)環(huán)境
測試用例模板:
Excel模板和Word模板
黑盒測試:(包括功能測試和性能測試)
把被測試的軟件看作是一個黑盒子祈坠,不關心盒子里面的結構是什么樣的枚荣,
只關心軟件的輸入數(shù)據(jù)和輸出結果。
白盒測試:
把盒子打開低缩,去研究里面的源代碼和程序結構
灰盒測試:
相當于黑盒測試加上白盒測試
靜態(tài)測試:
指不實際運行被測軟件暖庄,而是靜態(tài)地檢查程序代碼、界面或文檔中可能存在的過程
包含:
代碼測試:主要測試代碼是否符合相應的標準和規(guī)范。
界面測試:主要測試軟件的實際界面與需求中的說明是否相符
文檔測試,主要測試用戶手冊和需求說明是否真正符合用戶的實際需求
動態(tài)測試:
指實際運行被測程序力九,輸入相應的測試數(shù)據(jù),檢查實際輸出結果和預期結果是否相符的過程
黑盒測試有可能是動態(tài)測試(運行程序邑闺,只看輸入和輸出)跌前,也有可能是靜態(tài)測試(不運行程序,只是查看界面)
白盒測試有可能是動態(tài)測試(運行程序检吆,并分析代碼結構),也有可能是靜態(tài)測試(不運行程序程储,只是靜態(tài)查看代碼)
動態(tài)測試有可能是黑盒測試(運行程序蹭沛,只是輸入和輸出),也有可能是白盒測試(運行代碼章鲤,并分析代碼結構)
靜態(tài)測試有可能是黑盒測試(不運行程序摊灭,只是查看界面),也有可能是白盒測試(不運行程序败徊,只是靜態(tài)查看代碼)
單元測試:
依據(jù):一個是源程序本身帚呼,包括代碼和注釋;還有一個就是項目的《詳細設計》文檔
標準:
1.程序通過所有單元測試的用例
2.語句覆蓋達到100%
3.分支的覆蓋率達到85%
如何測試:采用白盒測試的方法,一般我們先靜態(tài)地檢查代碼是否符合規(guī)范煤杀,然后動態(tài)地運行代碼眷蜈,檢查其實際運行的結果。
4.樁模塊和驅(qū)動模塊:
樁模塊(Stub)是指模擬被測模塊所調(diào)用的模塊
驅(qū)動模塊(Dricer):指模擬被測模塊的上級模塊沈自,驅(qū)動模塊用來接收測試數(shù)據(jù)酌儒,啟動被測模塊并輸出結果。
集成測試:(用來檢查各個單元模塊結合到一起能否協(xié)同配合枯途,正常運行)
單元測試的下一個階段忌怎,是指將通過測試的單元模塊組裝成系統(tǒng)或子系統(tǒng),再進行測試酪夷,重點測試不同模塊的接口部分
依據(jù):單元測試的模塊以及《概要設計》文檔榴啸。
系統(tǒng)測試和驗收測試
系統(tǒng)測試:指的是將整個軟件系統(tǒng)看作一個整體進行測試,包括對功能鸥印、性能,以及軟件所運行的軟硬件環(huán)境進行測試腥例。
依據(jù):《系統(tǒng)需求規(guī)格說明書》文檔
驗收測試:指的是在系統(tǒng)測試的后期,以用戶測試為主燎竖,或有測試人員等質(zhì)量保障人員共同參與的測試,也是軟件正式交給用戶使用的最后一道工序构回。
驗收測試分為:
α測試:指的是用戶、測試人員纤掸、開發(fā)人員等共同參與的內(nèi)部測試
β測試:指的是內(nèi)測后的公測,即完全交給最終用戶測試
功能測試和性能測試
功能測試:檢查實際軟件的功能是否符合用戶的需求
分類:
邏輯功能測試:
界面測試:
易用性測試:
安裝測試:
兼容性測試:
等借跪。
性能測試:
軟件性能主要有時間性能和空間性能。
時間性能:主要指軟件的一個具體事務的響應時間掏愁。
空間性能:主要是指軟件運行時所消耗的系統(tǒng)資源。
軟件性能測試:
一般性能測試:指讓被測系統(tǒng)在正常的軟硬件環(huán)境下運行果港,不向其施加任何壓力的性能測試。
穩(wěn)定性測試:是指連續(xù)運行被測系統(tǒng)辛掠,檢查系統(tǒng)運行時的穩(wěn)定程度
負載測試:是指讓被測系統(tǒng)在其還能忍受的壓力的極限范圍之內(nèi)連續(xù)運行释牺,來測試系統(tǒng)的穩(wěn)定性。
(測試系統(tǒng)在臨界狀態(tài)下運行是否穩(wěn)定提供了一種辦法回挽。)
壓力測試:是指持續(xù)不斷地給被測系統(tǒng)增加壓力鉴裹,直到系統(tǒng)壓垮為止儒老,用來測試系統(tǒng)所能承受的最大壓力铁孵。
回歸測試戈二、冒煙測試、隨機測試
回歸測試:是指對軟件的新的版本測試時队塘,重復執(zhí)行上一個版本測試時袁梗,重復執(zhí)行上一個版本測試時的用例
回歸測試可以在任何測試階段進行(單元測試、集成測試憔古、系統(tǒng)測試遮怜、驗收測試等),既有黑盒測試的回歸鸿市,也有白盒測試的回歸锯梁。
冒煙測試:指在對一個新版本進行系統(tǒng)大規(guī)模的測試前,先驗證一下軟件的基本功能是否實現(xiàn)焰情,是否具備可測性陌凳。
隨機測試:是指測試中所有的輸入數(shù)據(jù)都是隨機生成的,其目的是模擬用戶的真實操作内舟,并發(fā)現(xiàn)一些邊緣性的錯誤合敦。
缺陷的二八定理:
一般情況下,軟件80%的缺陷集中在20%的模塊中验游。我們測試的時候要抓主要矛盾充岛,如果發(fā)現(xiàn)某一程序模塊比其他模塊有更多的缺陷,
就要投入主要的人力和精力重點測試這20%的模塊耕蝉,以提高我們的測試效率崔梗。
黑盒測試技術:
1.等價類技術:
2.邊界值技術:
3.因果圖法:
因果圖步驟:
(1)找出所有輸入條件和輸出條件,編號垒在。
(2)分析輸入條件之間的關系蒜魄,是互斥還是可以同時滿足。
(3)畫出輸入條件的排列組合情況场躯。
(4)編寫測試用例谈为。
4.流程圖法:
缺陷管理:
bug的分類:
1.按嚴重程度劃分:
由高到低的順序:系統(tǒng)崩潰、嚴重推盛、一般峦阁、次要谦铃、建議
2.按優(yōu)先級劃分:
由高到低的順序:高(high :應該立即修復的bug)耘成、中(middle :應該在產(chǎn)品發(fā)布之前修復的bug)、
低(low :時間允許應該修復的bug或是可以暫時存在的bug)
3.按照測試種類劃分:
邏輯功能類、性能類瘪菌、界面類撒会、易用性類、兼容性類? ? (黑盒)
邊界值類师妙、內(nèi)存溢出類诵肛、邏輯驅(qū)動類等 ? ? ? ? ? ? ? (白盒)
4.按功能模塊劃分:
5.按bug生命周期劃分:
新建(new)、確認(confirmed)默穴、解決(fixed)、關閉(close)薛训、重新打開(reopen)
提交缺陷報告的注意事項:
1.確保重現(xiàn)bug
2.要用最少且必要的步驟描述bug
3.簡潔仑氛、準確锯岖、完整
4.一個bug一個報告
測試管理:
軟件的生命周期:(分為軟件開發(fā)的生命周期和軟件測試的生命周期)
是指軟件開發(fā)和測試全部過程、活動和任務的結構框架遇伞,是從可行性研究到需求分析赃额,軟件設計叫确、編碼、測試飞盆、軟件發(fā)布維護的過程吓歇。
軟件開發(fā)的生命周期(軟件開發(fā)的流程):
是指軟件的開發(fā)過程中需要經(jīng)過的環(huán)節(jié)(需求分析 -> 概要設計 -> 詳細設計 -> 編碼 -> 維護)
軟件測試的生命周期:
測試計劃 -> 測試設計 -> 測試執(zhí)行 -> 測試評估
軟件生命周期的模型:
1.瀑布模型
優(yōu)點:
1.開發(fā)的各個階段比較清晰城看。
2.強調(diào)早期計劃及需求調(diào)查杏慰。
3.適合需求穩(wěn)定的產(chǎn)品開發(fā)炼鞠。
缺點:
1.依賴于早期的需求調(diào)查谒主,不適應需求的變化霎肯。
2.單一流程榛斯,不可逆驮俗。
3.風險往往遲至后期才顯露,失去及早糾正的機會
4.測試僅是編碼后的一個階段提佣。
2.螺旋模型
適合需求經(jīng)常變化的軟件項目拌屏,但其開發(fā)過程比較復雜倚喂,如果控制不好容易造成流程混亂瓣戚。
3.V模型
優(yōu)點:
詳細表示了測試的各個階段以及參考依據(jù)
缺點:
沒有說明在項目的前期測試需要做哪些工作(編寫測試計劃子库、測試用例等),流程單項不可逆宴倍。
4.W模型
軟件測試評估(測試總結)
是軟件測試生命周期的最后一個環(huán)節(jié)。
主要分兩種:
覆蓋的評測(也對測試的評測)
1.對源代碼的覆蓋
2.對需求的覆蓋
對缺陷的評測(也叫做對測試結果的評測)
1.缺陷分布圖
軟件測試工具
分類:
1.黑盒測試工具
是指測試軟件功能或性能的工具脖捻,主要用于系統(tǒng)測試和驗收測試;其有可分為功能測試工具和性能測試工具嗜浮。
2.白盒測試工具
是指測試軟件的源代碼的工具,可以實現(xiàn)代碼的靜態(tài)分析,動態(tài)測試未荒、評審等功能片排,主要用于單元測試。
3.管理測試工具
是指管理整個測試流程的工具迫卢,主要功能有測試計劃的管理冶共、測試用例的管理、缺陷跟蹤家卖、測試報告管理等庙楚,一般貫穿于整個軟件測試生命周期。