單元測試? 集成測試? ? 系統(tǒng)測試
單元測試:針對軟件基本組成單元(軟件設(shè)計(jì)最小單位)來進(jìn)行正確性檢驗(yàn)測試工作
目的:檢測軟件函數(shù)模塊對LLD說明書的符合程度
集成測試:在單元測試基礎(chǔ)上纬乍,將所有模塊按照概要設(shè)計(jì)要求組裝成子系統(tǒng),驗(yàn)證組裝后功能以及模塊間接口是否正確的測試工作
目的:檢測軟件模塊對HLD說明書的符合程度
系統(tǒng)測試:將集成好的軟件系統(tǒng)裸卫,做為整個(gè)計(jì)算機(jī)系統(tǒng)的一個(gè)元素,與計(jì)算機(jī)硬件,外設(shè)卑笨,數(shù)據(jù)和人員等其他系統(tǒng)元素結(jié)合在一起甜熔,在使用環(huán)境下對計(jì)算機(jī)進(jìn)行測試
目的:與需求規(guī)格說明書進(jìn)行比對,發(fā)現(xiàn)軟件與系統(tǒng)需求定義不符合或與之矛盾的地方
? ? ? ? ? ? ? ? ? 單元? 集成? 系統(tǒng) 的比較
測試方法: 白盒? 灰盒? 黑盒
考察范圍:數(shù)據(jù)結(jié)構(gòu)聋袋,邏輯結(jié)構(gòu)队伟,/模塊的接口數(shù)據(jù)傳遞,模塊組合后的整體功能/系統(tǒng)對需求的符合度
評估基準(zhǔn): 邏輯覆蓋率/接口覆蓋率/測試用例對需求規(guī)格覆蓋率
測試過程信息流
軟件配置? ? ? ? ? ? ? ? 回歸測試
測試配置? ? 測試~結(jié)果分析 ~改正錯(cuò)誤~結(jié)束? ? ? ? ? ? ? ? ? ? (測試結(jié)果與預(yù)期結(jié)果分析)
測試工具? ? ? ? ? ? ? ? 預(yù)期結(jié)果? ? 可靠性分析?
回歸測試:缺陷進(jìn)行修改 后幽勒,需要進(jìn)行回歸測試 嗜侮,目的是驗(yàn)證缺陷得到正確的修復(fù),另一方面是檢驗(yàn)對系統(tǒng)的變更沒有影響以前的功能
回歸測試可以發(fā)生在任何一個(gè)階段啥容,包括單元 集成 系統(tǒng) 測試锈颗,是一個(gè)活動(dòng)。
其他測試階段
單元測試咪惠,集成測試击吱,系統(tǒng)測試是軟件開發(fā)過程中在軟件內(nèi)部進(jìn)行的測試階段
軟件發(fā)布前 還可能進(jìn)行 有用戶參與德一些測試:
驗(yàn)收測試? ? ? ? ? ? ? ? 項(xiàng)目(用戶~)
A(ALPHA)測試? 產(chǎn)品(自~自)
B? (BETA)? ? 測試
驗(yàn)收測試: 時(shí)間 ~人員~地點(diǎn)~依據(jù)
時(shí)間:通過內(nèi)部系統(tǒng)測試及軟件配置審查 以后開始驗(yàn)收測試
人員:項(xiàng)目組成員,用戶代表
地點(diǎn):(用戶自選 )用戶所在地遥昧,或者公司每部模擬用戶環(huán)境
依據(jù):合同/需求規(guī)格說明書/驗(yàn)收測試計(jì)劃
a測試? 由用戶在開發(fā)環(huán)境下進(jìn)行測試姨拥,也可以是開發(fā)機(jī)構(gòu)內(nèi)部用戶在模擬實(shí)際操作下進(jìn)行绅喉。開發(fā)者在旁邊,環(huán)境可控
目的:評價(jià)軟件 功能/性能/技術(shù)支持/局域化/可用性/可靠性
b測試? :軟件的多個(gè)用戶 在一個(gè)或者多個(gè)用戶的實(shí)際使用環(huán)境下進(jìn)行的測試,環(huán)境不可控叫乌,開發(fā)者不在旁邊
區(qū)別 :環(huán)境是否可控 / 先a后b
測試過程階段劃分
測試計(jì)劃階段? 測試計(jì)劃
測試設(shè)計(jì)階段? 測試方案
測試實(shí)現(xiàn)階段? ? 測試用例 測試流程
測試執(zhí)行階段? 測試報(bào)告
測試文檔
測試計(jì)劃/測試方案/測試用例/測試規(guī)程/測試報(bào)告/測試日報(bào)
測試過程模型: 瀑布模型
? ? ? ? ? ? ? ? ? ? ? ? ? ? V模型
? ? ? ? ? ? ? ? ? ? ? ? ? ? W模型
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? H模型
驗(yàn)證? Verification和? 確認(rèn) Validation
驗(yàn)證: 保證軟件正確的實(shí)現(xiàn)特定功能的一系列活動(dòng)
確認(rèn):是指保證所生產(chǎn)的軟件可追溯到用戶需求的一系列活動(dòng)
測試過程規(guī)范:
CMM關(guān)于過程的要素
角色~入口準(zhǔn)則~輸入~活動(dòng)~出口準(zhǔn)則~評審和審計(jì)~可管理和可控制的工作產(chǎn)品~測量~書面流程~培訓(xùn)~工具
測試四個(gè)階段
系統(tǒng)測試各階段的輸入/輸出
測試計(jì)劃 :需求規(guī)格
? 測試 設(shè)計(jì) :概設(shè)/計(jì)劃
? 測試實(shí)現(xiàn)? :詳設(shè)/方案/用例/規(guī)程/預(yù)測事項(xiàng)
測試 完成 : 系統(tǒng)測試報(bào)告/缺陷報(bào)告/預(yù)測試報(bào)告
測試過程規(guī)范需求分析階段 工作任務(wù)及角色及職責(zé)
任務(wù): 需求分析 完成SRS
? ? ? ? 需求規(guī)格說明書的評審
? ? ? ? 需求跟蹤
? ? ? 系統(tǒng)測試計(jì)劃
? ? ? 系統(tǒng)測試計(jì)劃的評審
角色:
項(xiàng)目經(jīng)理:組織和參與柴罐,提出可測試性需求
項(xiàng)目工程師:參與srs評審/協(xié)助完成測試計(jì)劃協(xié)作/參加測試計(jì)劃評審/完成測試需求跟蹤
軟件經(jīng)理:通過~QA:質(zhì)量保證:監(jiān)督 評審~CCB的負(fù)責(zé)人:控制需求變更
在需求階段出現(xiàn)的bug 占較大比重
uT/IT/ST執(zhí)行階段的角色和職責(zé)
開發(fā)組項(xiàng)目經(jīng)理:確保缺陷分發(fā)給相關(guān)軟件工程師
? ? ? ? ? ? ? ? 提出轉(zhuǎn)系統(tǒng)測試申請
軟件開發(fā)人員:? 修正缺陷
? ? ? ? ? ? ? ? ? ? ? ? ? 驗(yàn)證相關(guān)缺陷被修正
? ? ? ? .? ? ? ? ? ? ? ? ? 參加各階段測試報(bào)告評審
QA:監(jiān)督各項(xiàng)目組遵循測試流程
軟件測試工程師:搭建測試環(huán)境/執(zhí)行測試用例/提交缺陷報(bào)告/回歸測試/每天提交測試報(bào)告/測試報(bào)告寫作/參加評審/參加轉(zhuǎn)系統(tǒng)測試評審