試入門 | 測(cè)試?yán)碚摰?課)
前言本文是軟件測(cè)試入門系列的第一篇整理自測(cè)試?yán)碚摰谝惶斓膶W(xué)習(xí)筆記系統(tǒng)梳理軟件生命周期、開發(fā)模型、測(cè)試原則、測(cè)試分類與測(cè)試流程幫你快速搭建軟件測(cè)試的知識(shí)框架。適合測(cè)試小白入門 面試前快速?gòu)?fù)習(xí)。 全文約 3000 字建議收藏后配合思維導(dǎo)圖食用食用時(shí)間約 15 分鐘 目錄一、軟件的生命周期重要二、軟件開發(fā)模型瀑布模型V 模型三、測(cè)試原則7 大原則四、測(cè)試分類按測(cè)試階段分類按測(cè)試技術(shù)分類其他測(cè)試分類五、系統(tǒng)測(cè)試類型與評(píng)估基準(zhǔn)六、測(cè)試流程重要七、驗(yàn)收測(cè)試細(xì)分八、總結(jié)一、軟件的生命周期重要軟件生命周期是指軟件從產(chǎn)生、開發(fā)到報(bào)廢的整個(gè)過程共包含 8 個(gè)階段各階段的主要角色和產(chǎn)出物如下階段主要角色產(chǎn)出物項(xiàng)目計(jì)劃項(xiàng)目經(jīng)理項(xiàng)目計(jì)劃書包含項(xiàng)目里程碑等需求分析需求工程師 / 產(chǎn)品經(jīng)理需求規(guī)格說明書SRS、FeatureList等概要設(shè)計(jì)架構(gòu)組概要設(shè)計(jì)說明書HLDHigh Level Design詳細(xì)設(shè)計(jì)開發(fā)人員詳細(xì)設(shè)計(jì)說明書LLDLow Level Design編碼開發(fā)人員程序代碼測(cè)試測(cè)試團(tuán)隊(duì)測(cè)試計(jì)劃、測(cè)試設(shè)計(jì)、測(cè)試用例、測(cè)試報(bào)告、測(cè)試總結(jié)發(fā)布—安裝包、說明書、指導(dǎo)書等運(yùn)維運(yùn)維人員對(duì)客戶反饋的問題進(jìn)行解答和跟蹤注如果是敏捷開發(fā)流程概設(shè)和詳設(shè)這兩個(gè)步驟可能會(huì)直接省略記憶要點(diǎn)需求分析收集客戶或領(lǐng)導(dǎo)的零散需求 → 輸出SRS概要設(shè)計(jì)HLD高層抽象設(shè)計(jì)軟件架構(gòu) →架構(gòu)組負(fù)責(zé)詳細(xì)設(shè)計(jì)LLD細(xì)化到模塊內(nèi)部結(jié)構(gòu) →開發(fā)人員負(fù)責(zé)測(cè)試輸出物測(cè)試策劃測(cè)試計(jì)劃、用例設(shè)計(jì)編寫、測(cè)試執(zhí)行、測(cè)試報(bào)告、測(cè)試總結(jié)等。?? 劃重點(diǎn)測(cè)試并不是編碼完成之后才開始的活動(dòng)測(cè)試要盡早介入從需求階段就可以開始二、軟件開發(fā)模型1. 瀑布模型Waterfall Model核心特點(diǎn)從上往下單流程、不可逆各階段順序執(zhí)行前一階段完成后才能進(jìn)入下一階段優(yōu)點(diǎn)流程清晰、文檔規(guī)范缺點(diǎn)缺乏靈活性需求變更成本極高測(cè)試介入太晚。2. V 模型V ModelV 模型是測(cè)試人員必須掌握的經(jīng)典模型它的核心思想是開發(fā)和測(cè)試同時(shí)進(jìn)行一一對(duì)應(yīng)。V 模型的優(yōu)化點(diǎn)在 V 模型基礎(chǔ)上進(jìn)行優(yōu)化測(cè)試側(cè)增加分析和設(shè)計(jì)活動(dòng)開發(fā)側(cè)增加驗(yàn)證和確認(rèn)活動(dòng)主要角色各功能模塊負(fù)責(zé)人。 面試常問V 模型和瀑布模型的區(qū)別 答瀑布模型測(cè)試只出現(xiàn)在編碼之后V 模型中每個(gè)開發(fā)階段都有對(duì)應(yīng)的測(cè)試階段測(cè)試與開發(fā)并行。三、測(cè)試原則7 大原則測(cè)試原則是建立正確測(cè)試思維的基石面試高頻考點(diǎn)逐條背下來#原則解讀1測(cè)試能夠顯示缺陷的存在測(cè)試只能證明缺陷存在不能證明軟件沒有缺陷2窮盡測(cè)試是不可能的不可能 100% 窮舉測(cè)試 → 引出測(cè)試設(shè)計(jì)方法的重要性3測(cè)試要盡早介入從需求階段開始介入利用缺陷放大原理降低修復(fù)成本4缺陷的聚集效應(yīng)80/20 原則80% 的缺陷存在于 20% 的模塊中5殺蟲劑悖論同樣的測(cè)試用例執(zhí)行多次后很難發(fā)現(xiàn)新 Bug → 用例要持續(xù)更新6沒有缺陷的系統(tǒng)并不代表是有用的系統(tǒng)軟件還要滿足用戶的實(shí)際需求7測(cè)試越來越依賴于具體的商業(yè)背景測(cè)試活動(dòng)要結(jié)合業(yè)務(wù)場(chǎng)景四、測(cè)試分類測(cè)試分類的全景圖如下一圖看懂所有分類維度一按測(cè)試階段分類測(cè)試階段說明常用技術(shù)檢驗(yàn)依據(jù)單元測(cè)試UTUnit Testing針對(duì)軟件基本組成單元的測(cè)試多用白盒測(cè)試技術(shù)詳細(xì)設(shè)計(jì)說明書集成測(cè)試ITIntegration Testing將所有模塊按照概要說明書組裝成系統(tǒng)測(cè)試模塊/組件之間的接口多用黑盒測(cè)試技術(shù)概要設(shè)計(jì)說明書、需求說明書系統(tǒng)測(cè)試STSystem Testing對(duì)整個(gè)系統(tǒng)進(jìn)行測(cè)試檢驗(yàn)是否滿足需求黑盒為主需求規(guī)格說明書各種功能規(guī)范、UIUE等驗(yàn)收測(cè)試軟件開發(fā)完成后用戶對(duì)產(chǎn)品投入使用前進(jìn)行的質(zhì)量檢驗(yàn)活動(dòng)—需求規(guī)格說明書、UIUE等二按測(cè)試技術(shù)分類黑盒測(cè)試又稱數(shù)據(jù)驅(qū)動(dòng)測(cè)試把程序看作一個(gè)不能打開的黑盒子不關(guān)心內(nèi)部實(shí)現(xiàn)只關(guān)注輸入與輸出。 舉例自動(dòng)售貨機(jī)——不需要看清內(nèi)部的機(jī)械結(jié)構(gòu)需要確認(rèn)的是付錢后能取出預(yù)期的商品白盒測(cè)試又稱結(jié)構(gòu)測(cè)試或邏輯驅(qū)動(dòng)測(cè)試測(cè)試對(duì)象是源程序以程序內(nèi)部邏輯為基礎(chǔ) 舉例自動(dòng)售貨機(jī)——需要把最外層的蓋子拿開看清內(nèi)部的機(jī)械邏輯結(jié)構(gòu)和零件組成?;液袦y(cè)試只有概念介于黑盒與白盒之間既關(guān)注輸入輸出也關(guān)注部分內(nèi)部邏輯。三其他測(cè)試分類分類說明回歸測(cè)試缺陷被修復(fù)后進(jìn)行的測(cè)試目的是驗(yàn)證缺陷得到了正確的修復(fù)冒煙測(cè)試測(cè)試前的測(cè)試對(duì)軟件基本功能進(jìn)行快速驗(yàn)證確認(rèn)動(dòng)態(tài)測(cè)試需要運(yùn)行程序的測(cè)試。在車載領(lǐng)域這個(gè)術(shù)語(yǔ)的意思是駕駛車輛動(dòng)態(tài)測(cè)試。靜態(tài)測(cè)試不運(yùn)行程序通過走查、評(píng)審等方式檢查代碼和文檔。在車載領(lǐng)域這個(gè)術(shù)語(yǔ)的意思是在測(cè)試車上靜態(tài)測(cè)試不需要駕車。國(guó)際化測(cè)試測(cè)試軟件對(duì)不同時(shí)區(qū)、文化習(xí)慣例如朝拜功能、貨幣格式等國(guó)際差異的支持能力五、系統(tǒng)測(cè)試類型與評(píng)估基準(zhǔn)系統(tǒng)測(cè)試的 9 大類型系統(tǒng)測(cè)試ST包含以下類型也是日常測(cè)試工作中最常接觸的功能測(cè)試界面測(cè)試性能測(cè)試安全測(cè)試兼容性測(cè)試壓力測(cè)試負(fù)載測(cè)試容量測(cè)試電量測(cè)試移動(dòng)端特有各測(cè)試階段的評(píng)估基準(zhǔn)測(cè)試階段評(píng)估基準(zhǔn)單元測(cè)試邏輯覆蓋率集成測(cè)試接口覆蓋率系統(tǒng)測(cè)試測(cè)試用例對(duì)需求規(guī)格的覆蓋率 記憶技巧越靠前的階段越看代碼內(nèi)部邏輯 → 接口系統(tǒng)測(cè)試階段則回歸需求本身。六、測(cè)試流程重要完整的測(cè)試流程是每個(gè)測(cè)試工程師的日常工作閉環(huán)務(wù)必牢記順序面試常問測(cè)試需求分析→ 確定測(cè)試策略、制定計(jì)劃測(cè)試計(jì)劃、方案→ 主要角色測(cè)試經(jīng)理、測(cè)試組長(zhǎng)測(cè)試用例設(shè)計(jì)→ 編寫、評(píng)審測(cè)試用例搭建測(cè)試環(huán)境→ 開發(fā)提測(cè)后進(jìn)行冒煙測(cè)試→ 確認(rèn)沒有低級(jí)問題或黑屏等嚴(yán)重問題執(zhí)行測(cè)試用例→ 冒煙測(cè)試通過后開始批量執(zhí)行用例測(cè)試提交并跟蹤 BUG→ 將發(fā)現(xiàn)的 Bug 提交給開發(fā)并跟蹤修復(fù)后進(jìn)行回歸測(cè)試撰寫測(cè)試報(bào)告測(cè)試總結(jié)。七、驗(yàn)收測(cè)試細(xì)分類型特點(diǎn)非正式驗(yàn)收測(cè)試α 測(cè)試 / β 測(cè)試針對(duì)早期的、不穩(wěn)定的軟件進(jìn)行測(cè)試介入更早正式驗(yàn)收測(cè)試針對(duì)相對(duì)穩(wěn)定的、后期的軟件進(jìn)行測(cè)試八、總結(jié)本文搭建了軟件測(cè)試入門的知識(shí)框架回顧一下核心內(nèi)容?軟件生命周期8 個(gè)階段 各階段角色與產(chǎn)出物?開發(fā)模型瀑布模型單流程不可逆、V 模型開發(fā)測(cè)試一一對(duì)應(yīng)?7 大測(cè)試原則建立正確的測(cè)試思維面試必背?測(cè)試分類按階段UT/IT/ST/驗(yàn)收、按技術(shù)黑盒/白盒/灰盒、其他分類?系統(tǒng)測(cè)試 9 大類型 各階段評(píng)估基準(zhǔn)?測(cè)試流程 8 步閉環(huán)從需求分析到測(cè)試總結(jié)。掌握以上內(nèi)容你就建立了對(duì)軟件測(cè)試的整體認(rèn)知為后續(xù)學(xué)習(xí)測(cè)試用例設(shè)計(jì)方法等價(jià)類、邊界值、判定表……、自動(dòng)化測(cè)試打下堅(jiān)實(shí)基礎(chǔ)。分割線??寫在最后 如果這篇文章對(duì)你有幫助歡迎點(diǎn)贊 收藏 關(guān)注歡迎評(píng)論區(qū)留言交流~ 下一篇預(yù)告《軟件測(cè)試?yán)碚摰诙霣ug屬性和測(cè)試用例常識(shí)》