安康北京網(wǎng)站建設(shè)aso安卓?jī)?yōu)化
軟件測(cè)試的發(fā)展
1960年代是調(diào)試時(shí)期(測(cè)試即調(diào)試)
1960年 - 1978年 論證時(shí)期(軟件測(cè)試是驗(yàn)證軟件是正確的)和 1979年 - 1982年 破壞性測(cè)試時(shí)期(為了發(fā)現(xiàn)錯(cuò)誤而執(zhí)行程序的過(guò)程)
1983年起,軟件測(cè)試已有了行業(yè)標(biāo)準(zhǔn)(IEEE829),它需要運(yùn)用專門的方法和手段,需要專門人才和專家來(lái)承擔(dān)。
1990年起軟件迅速發(fā)展,測(cè)試行業(yè)也更著發(fā)生了巨大變化,開始引入專業(yè)測(cè)試工具
什么是軟件測(cè)試
在規(guī)定條件下對(duì)程序進(jìn)行操作,從而發(fā)現(xiàn)錯(cuò)誤,對(duì)軟件質(zhì)量進(jìn)行評(píng)估的一個(gè)過(guò)程.
軟件測(cè)試的目的
是想以最少的人力,物力和時(shí)間找出軟件中潛在的各種錯(cuò)誤與缺陷,通過(guò)修正各種錯(cuò)誤和缺陷提高軟件質(zhì)量,回避軟件發(fā)布后由于潛在的軟件缺陷和錯(cuò)誤造成的隱患以及帶來(lái)的商業(yè)風(fēng)險(xiǎn)。
**注意:**不要和軟件測(cè)試的定義混淆
軟件測(cè)試的定義
使用人工或自動(dòng)手段來(lái)運(yùn)行或測(cè)試摸個(gè)系統(tǒng)的過(guò)程,其目的在于檢驗(yàn)它是否滿足規(guī)定的需求或是弄清預(yù)期結(jié)果和實(shí)際結(jié)果之間的差別.
測(cè)試模型
1. 概述
軟件測(cè)試和軟件開發(fā)一樣,都遵循軟件工程原理,遵循管理學(xué)原理,所以理解好軟件的開發(fā)模型會(huì)便于理解測(cè)試模型.
軟件測(cè)試的一般流程:
我們發(fā)現(xiàn)一般的軟件測(cè)試流程和軟件開發(fā)的流程一樣,但是這樣的流程測(cè)試介入的較晚,對(duì)于前期重大的bug很難修復(fù).所以測(cè)試的流程進(jìn)行總結(jié),總結(jié)出以下幾個(gè)常用的測(cè)試模型:
- V模型
- W(雙V)模型
- H模型
1.1 V模型
1.1.1 介紹
V模型和瀑布模型有一些共同的特性,V模型中的過(guò)程從左到右,描述了基本的開發(fā) 過(guò)程和測(cè)試行為。
單元測(cè)試:是模塊測(cè)試,驗(yàn)證軟件的基本組成單位的正確性,是白盒測(cè)試
集成測(cè)試:是模塊間的測(cè)試,測(cè)試接口(軟件各模塊之間的接口和軟件與硬件之間的接口)是否正確,是灰盒測(cè)試(白盒和黑盒結(jié)合)
系統(tǒng)測(cè)試:系統(tǒng)測(cè)試包括:冒煙測(cè)試 系統(tǒng)測(cè)試 回歸測(cè)試
- 冒煙測(cè)試:主干流程測(cè)試,確認(rèn)軟件的基本功能正常,可以進(jìn)行后續(xù)的測(cè)試工作
- 系統(tǒng)測(cè)試:是檢測(cè)系統(tǒng)的功能、質(zhì)量、性能能否滿足系統(tǒng)的要求,包括功能、性能、界面、可靠性、兼容性等等,是黑盒測(cè)試
- 回歸測(cè)試:修改了舊代碼之后重新進(jìn)行測(cè)試,確認(rèn)修改后的代碼沒有引入新的錯(cuò)誤或?qū)е缕渌a產(chǎn)生新的錯(cuò)誤
驗(yàn)收測(cè)試:是確保軟件的實(shí)現(xiàn)能否滿足用戶的需求或合同的要求
1.1.2 優(yōu)缺點(diǎn)
優(yōu)點(diǎn):
- 每一個(gè)階段都清晰明了、便于控制開發(fā)的每一個(gè)過(guò)程
- 既包含單元測(cè)試又飽含系統(tǒng)測(cè)試
缺點(diǎn):
- 測(cè)試介入的較晚,對(duì)于前期的一些缺陷無(wú)從發(fā)現(xiàn)和修改
- 測(cè)試和開發(fā)串行
1.2. W模型
1.2.1 介紹
V模型的局限性在于沒有明確地說(shuō)明早期的測(cè)試,無(wú)法體現(xiàn)“盡早地和不斷地進(jìn)行軟件測(cè)試” 的原則。在V模型中增加軟件各開發(fā)階段應(yīng)同步進(jìn)行的測(cè)試,演化為W 模型(如下圖)。在模型中不難看出,開發(fā)是“V”,測(cè)試是與此并行的“V”。
W模型是V模型的發(fā)展,強(qiáng)調(diào)的是測(cè)試伴隨著整個(gè)軟件開發(fā)周期,而且測(cè)試的對(duì)象不僅僅是程序,需求、功能和設(shè)計(jì)同樣要測(cè)試。測(cè)試與開發(fā)是同步進(jìn)行的,從而有利于盡早地發(fā)現(xiàn)問(wèn)題。
1.2.2 優(yōu)缺點(diǎn)
優(yōu)點(diǎn)
- 測(cè)試伴隨軟件的整個(gè)生命周期,例如,在需求分析結(jié)束后就可以進(jìn)行需求分析測(cè)試、
- 測(cè)試于開發(fā)是并行獨(dú)立進(jìn)行
缺點(diǎn)
- 對(duì)需求和測(cè)試技術(shù)要求高
- 適用于大中型企業(yè)
1.3. H模型
1.3.1 簡(jiǎn)介
H模型中, 軟件測(cè)試過(guò)程活動(dòng)完全獨(dú)立,貫穿于整個(gè)產(chǎn)品的周期,與其他流程并發(fā)地進(jìn)行,某個(gè)測(cè)試點(diǎn)準(zhǔn)備就緒時(shí),就可以從測(cè)試準(zhǔn)備階段進(jìn)行到測(cè)試執(zhí)行階段。軟件測(cè)試可以盡早的進(jìn)行,并且可以根據(jù)被測(cè)物的不同而分層次進(jìn)行。
1.3.2 優(yōu)缺點(diǎn)
優(yōu)點(diǎn):
-
開發(fā)的H模型揭示了軟件測(cè)試除測(cè)試執(zhí)行外,還有很多工作;
-
軟件測(cè)試完全獨(dú)立,貫穿整個(gè)生命周期,且與其他流程并發(fā)進(jìn)行;
-
軟件測(cè)試活動(dòng)可以盡早準(zhǔn)備、盡早執(zhí)行,具有很強(qiáng)的靈活性;
缺點(diǎn):
-
管理型要求高:由于模型很靈活,必須要定義清晰的規(guī)則和管理制度,否則測(cè)試過(guò)程將非常難以管理和控制;
-
技能要求高:H模型要求能夠很好的定義每個(gè)迭代的規(guī)模,不能太大也不能太小;
-
測(cè)試就緒點(diǎn)分析困難:測(cè)試很多時(shí)候,你并不知道測(cè)試準(zhǔn)備到什么時(shí)候是合適的,就緒點(diǎn)在哪里,就緒點(diǎn)的標(biāo)準(zhǔn)是什么,這就對(duì)后續(xù)的測(cè)試執(zhí)行的啟動(dòng)帶來(lái)很大困難;
2. 小結(jié)
在實(shí)際工作中應(yīng)靈活的運(yùn)用各種模型的優(yōu)點(diǎn).
V模型: 強(qiáng)調(diào)了在整個(gè)軟件項(xiàng)目開發(fā)中需要經(jīng)歷的若干個(gè)測(cè)試級(jí)別,并與每一個(gè)開發(fā)級(jí)別對(duì)應(yīng);忽略了測(cè)試的對(duì)象不應(yīng)該僅僅包括程序,沒有明確指出對(duì)需求、設(shè)計(jì)的測(cè)試
W模型: 補(bǔ)充了V模型中忽略的內(nèi)容,強(qiáng)調(diào)了測(cè)試計(jì)劃等工作的先行和對(duì)系統(tǒng)需求和系統(tǒng)設(shè)計(jì)的測(cè)試;與V模型相同,沒有對(duì)軟件測(cè)試的流程進(jìn)行說(shuō)明
H模型: 強(qiáng)調(diào)測(cè)試是獨(dú)立的,只要測(cè)試準(zhǔn)備完成,就可以執(zhí)行測(cè)試