1.軟件缺陷定義及產(chǎn)生原因
定義:
從產(chǎn)品內(nèi)部看,缺陷是軟件產(chǎn)品開發(fā)或維護(hù)過程中存在的錯(cuò)誤、毛病等各種問題;
從產(chǎn)品外部看坝辫,缺陷是系統(tǒng)所需要實(shí)現(xiàn)的某種功能的失效或違背。
軟件缺陷的屬性包括缺陷標(biāo)識(shí)射亏、缺陷類型近忙、缺陷級(jí)別
缺陷標(biāo)識(shí)是標(biāo)記某個(gè)缺陷的唯一標(biāo)識(shí)竭业,可以用數(shù)字序號(hào)表示
缺陷類型有功能、用戶界面及舍、文檔未辆、軟件包、性能锯玛、接口咐柜、兼容性
缺陷級(jí)別有致命、嚴(yán)重更振、一般炕桨、輕微
原因:
1.需求:需求表述理解饭尝,導(dǎo)致編寫引起的錯(cuò)誤
2.架構(gòu):系統(tǒng)設(shè)計(jì)架構(gòu)引起的錯(cuò)誤
3.開發(fā):開發(fā)過程缺乏溝通和監(jiān)督
4.工具:軟件開發(fā)工具本身的問題
5.復(fù)雜度:軟件需求復(fù)雜度越來越高
6.與用戶需求不符合:即使本身不存在某種意義上的缺陷
2.常見軟件缺陷管理工具
禪道肯腕、Jira
3.軟件測(cè)試概念和目的
目的:找到程序bug,提高用戶體驗(yàn)
概念:在規(guī)定的條件下對(duì)程序進(jìn)行操作,以發(fā)現(xiàn)錯(cuò)誤,對(duì)軟件質(zhì)量進(jìn)行評(píng)估
4.V模型 跟W模型
V模型:V模型的左邊下降的是開發(fā)過程各階段 右邊上升部分是測(cè)試過程的各個(gè)階段
V模型圖:
? ? ? ? ? ? ? 用戶需求? ? ? ? ? ? ? ? 驗(yàn)收測(cè)試
? 需求分析 ? ? ? ? 系統(tǒng)測(cè)試
? ? ? 概要設(shè)計(jì)? ? ? ? ? ? ? 集成測(cè)試
? ? ? ? 詳細(xì)設(shè)計(jì)? ? ? ? 單元測(cè)試
? ? ? ? ? ? ? ? 編碼和實(shí)現(xiàn)
V模型的優(yōu)點(diǎn)在于它非常明確的標(biāo)明了測(cè)試過程中存在的不同級(jí)別 并且清楚地描述了這些測(cè)試階段和 開發(fā)各階段的對(duì)應(yīng)關(guān)系
W模型圖:
需求分析? ? ? ? ? ? ? 需求測(cè)試? ? ? ? ? ? ? ? ? 系統(tǒng)安裝? ? ? 驗(yàn)收測(cè)試
? ? 概要設(shè)計(jì)? ? ? ? 概要設(shè)計(jì)測(cè)試? ? ? ? ? 系統(tǒng)構(gòu)建? ? ? 系統(tǒng)測(cè)試
? ? ? 詳細(xì)設(shè)計(jì)? ? ? ? 詳細(xì)設(shè)計(jì)測(cè)試? ? 模塊集成? ? ? 集成測(cè)試
? ? ? ? ? ? ? ? ? ? ? 編碼實(shí)現(xiàn)? ? ? ? ? 單元測(cè)試
W模型:相對(duì)于V模型 W更科學(xué) 是V的發(fā)展 強(qiáng)調(diào)的是測(cè)試伴隨著整個(gè)軟件開發(fā)周期 而且測(cè)試的對(duì)象不僅僅是程序需求功能和設(shè)計(jì)同樣要測(cè)試
? ? ? ? ? ? ? 測(cè)試與開發(fā)是同步進(jìn)行的 有利于盡早發(fā)現(xiàn)問題
5.軟件測(cè)試的流程
參與需求討論 制定測(cè)試計(jì)劃 確保測(cè)試能順利執(zhí)行并完成
負(fù)責(zé)項(xiàng)目的功能性測(cè)試 用戶體驗(yàn)測(cè)試 兼容性測(cè)試以及性能測(cè)試
負(fù)責(zé)測(cè)試用例的編寫 編寫測(cè)試報(bào)告和對(duì)測(cè)試結(jié)果分析
與開發(fā)人員 產(chǎn)品經(jīng)理溝通和協(xié)作 推動(dòng)整個(gè)項(xiàng)目的順利執(zhí)行
負(fù)責(zé)軟件開發(fā)團(tuán)隊(duì)項(xiàng)目進(jìn)度管理工作
熟悉Linux常用命令 熟悉常用數(shù)據(jù)庫 熟練使用基本的SQL語句
熟練使用Loadrunner Jmeter等至少一種性能測(cè)試工具
6.軟件測(cè)試的基本原則
測(cè)試顯示軟件存在缺陷
窮盡測(cè)試是不可能的
缺陷集群性(2/8原則)
測(cè)試盡早介入
殺蟲劑悖論
測(cè)試活動(dòng)依賴于測(cè)試內(nèi)容
沒有錯(cuò)誤是好? 是謬論
程序員不能自測(cè)之后就上線
嚴(yán)格執(zhí)行測(cè)試計(jì)劃 排除測(cè)試的隨意性
應(yīng)當(dāng)對(duì)每一個(gè)測(cè)試結(jié)果做全面的檢查
妥善保存測(cè)試計(jì)劃 測(cè)試用例 出錯(cuò)統(tǒng)計(jì)和最終分析報(bào)告 為維護(hù)提供方便
設(shè)計(jì)測(cè)試用例時(shí) 應(yīng)當(dāng)包括合理的輸入數(shù)據(jù)和不合理的輸入數(shù)據(jù)
測(cè)試用例應(yīng)由測(cè)試數(shù)據(jù)和與之對(duì)應(yīng)的預(yù)期輸出結(jié)果兩部分組成
7.軟件測(cè)試的分類
按階段分為(單元測(cè)試 集成測(cè)試 系統(tǒng)測(cè)試 驗(yàn)收測(cè)試)
1.單元測(cè)試(對(duì)一個(gè)模塊 一個(gè)函數(shù) 或者一個(gè)類來進(jìn)行正確性檢驗(yàn)的測(cè)試方法)