1. 前言
在進(jìn)行軟件測(cè)試的學(xué)習(xí)之前,我們要了解軟件測(cè)試一些基本概念. 這些基本概念將幫助我們更加明確工作的目標(biāo)以及軟件測(cè)試到底要做什么.
2. 軟件測(cè)試的基本概念
軟件測(cè)試的基本概念有3個(gè),分別是需求,測(cè)試用例和BUG.
2.1 需求
這里的需求還可以分為 用戶(hù)需求和軟件需求,用戶(hù)需求: 簡(jiǎn)單理解為甲方提出的需求. 軟件需求: 開(kāi)發(fā)人員要實(shí)現(xiàn)的軟件功能. 軟件也會(huì)作為開(kāi)發(fā)和測(cè)試的依據(jù).
一般來(lái)說(shuō) 用戶(hù)需求不能直接作為軟件需求. 我們要對(duì)用戶(hù)需求進(jìn)行分析,這里的分析可能是從技術(shù)上分析(看技術(shù)是否可行). 從市場(chǎng)上分析(市場(chǎng)需求量),從成本上分析(成本與收益占比).
2.2 測(cè)試用例
測(cè)試用例意義就是:測(cè)什么,怎么測(cè). 明確出要測(cè)試的要素,測(cè)試用例的要素包括標(biāo)題,測(cè)試環(huán)境,操作步驟,測(cè)試數(shù)據(jù)和預(yù)期結(jié)果這五大要素.
- 標(biāo)題: 簡(jiǎn)要說(shuō)明這個(gè)測(cè)試用例是干什么的
- 測(cè)試環(huán)境: 不同的環(huán)境測(cè)試出來(lái)的結(jié)果可能不同
- 操作步驟: 不同的操作步驟測(cè)試出來(lái)的結(jié)果也可能不同
- 測(cè)試數(shù)據(jù): 根據(jù)測(cè)試環(huán)境和測(cè)試步驟得出的結(jié)果
- 預(yù)期結(jié)果: 期望得到的結(jié)果
2.3 BUG
與產(chǎn)品規(guī)格說(shuō)明書(shū)(需求文檔)不符就算的上是BUG
主要有以下幾點(diǎn):
- 當(dāng)且僅當(dāng)產(chǎn)品規(guī)格說(shuō)明書(shū)(需求文檔)存在且正確的時(shí)候,程序?qū)崿F(xiàn)地功能與產(chǎn)品規(guī)格說(shuō)明書(shū)(需求文檔)要求不匹配時(shí),那就是軟件錯(cuò)誤.
- 當(dāng)產(chǎn)品規(guī)格說(shuō)明書(shū)(需求文檔)沒(méi)有提出的功能時(shí),以用戶(hù)為準(zhǔn).當(dāng)程序沒(méi)有實(shí)現(xiàn)用戶(hù)合理預(yù)期(需要測(cè)試人員具有良好的產(chǎn)品思維)的需求時(shí),這也是軟件錯(cuò)誤
3. 開(kāi)發(fā)模型
開(kāi)發(fā)模型(Software Development Model)是指軟件開(kāi)發(fā)全部過(guò)程、活動(dòng)和任務(wù)的結(jié)構(gòu)框架
3.1 軟件/軟件開(kāi)發(fā) 的生命周期
軟件/軟件開(kāi)發(fā) 的生命周期一般分為6個(gè)階段:
需求分析->計(jì)劃->設(shè)計(jì)->編碼->測(cè)試->運(yùn)行維護(hù)
- 需求分析: 這里的分析與前面一致,要進(jìn)行市場(chǎng)分析,技術(shù)分析(站在技術(shù)的角度上看技術(shù)是否支持),成本和收入占比分析.
- 計(jì)劃: 什么時(shí)候開(kāi)始,什么時(shí)候結(jié)束.耗時(shí)多久
- 設(shè)計(jì): 將大的需求拆分成一個(gè)個(gè)小的可執(zhí)行任務(wù)
- 編碼: 開(kāi)發(fā)人員參考測(cè)試文檔和開(kāi)發(fā)文檔等進(jìn)行功能實(shí)現(xiàn)
- 測(cè)試: 測(cè)試人員進(jìn)行測(cè)試
- 運(yùn)行維護(hù): 運(yùn)行維護(hù)要具有完善性,修復(fù)性和預(yù)防性.當(dāng)產(chǎn)品上線(xiàn)之后,用戶(hù)開(kāi)始使用.當(dāng)用戶(hù)發(fā)現(xiàn)了測(cè)試人員沒(méi)有發(fā)現(xiàn)的BUG,后面測(cè)試開(kāi)發(fā)人員對(duì)BUG進(jìn)行修復(fù),同時(shí)也對(duì)可能出現(xiàn)的BUG進(jìn)行處理
軟件測(cè)試貫穿軟件的整個(gè)生命周期
3.2 軟件測(cè)試的生命周期
軟件測(cè)試分為以下幾個(gè)階段: 需求分析->測(cè)試計(jì)劃->測(cè)試設(shè)計(jì)與開(kāi)發(fā)->測(cè)試執(zhí)行->測(cè)試評(píng)估
- 需求分析: 1. 站在用戶(hù)角度上思考問(wèn)題: 判斷軟件需求是否合理. 2. 站在技術(shù)的角度上思考問(wèn)題:技術(shù)上是否可行,還有沒(méi)有優(yōu)化空間. 3. 站在測(cè)試的角度上思考問(wèn)題: 判斷當(dāng)前的業(yè)務(wù)邏輯是否存在冗余/沖突
- 測(cè)試計(jì)劃: 什么時(shí)候開(kāi)始測(cè)試,什么時(shí)候結(jié)束測(cè)試,測(cè)試耗時(shí)多久
- 測(cè)試設(shè)計(jì)與開(kāi)發(fā):1.寫(xiě)測(cè)試文檔,明確標(biāo)注測(cè)試方法,測(cè)試工具,測(cè)試形式等等. 2. 編寫(xiě)測(cè)試用例
- 測(cè)試執(zhí)行:充分利用測(cè)試用例和其它工具對(duì)項(xiàng)目盡可能的全覆蓋測(cè)試
- 測(cè)試評(píng)估: 評(píng)估產(chǎn)品是否有其它質(zhì)量問(wèn)題,功能演示
項(xiàng)目測(cè)試完成之后,需要進(jìn)行項(xiàng)目上線(xiàn).項(xiàng)目上線(xiàn)之后,測(cè)試人員也需要及時(shí)關(guān)注產(chǎn)品是否出現(xiàn)了問(wèn)題.
如果出現(xiàn)了問(wèn)題:
- 嘗試復(fù)現(xiàn),判斷這個(gè)問(wèn)題是普遍出現(xiàn)的還是個(gè)別情況.
- 嘗試定位問(wèn)題出現(xiàn)的原因,幫助開(kāi)發(fā)人員定位盡快定位問(wèn)題并解決問(wèn)題
- 反思問(wèn)題:為什么會(huì)出現(xiàn)問(wèn)題,如何解決,今后如何避免問(wèn)題.
3.3 瀑布模型
瀑布模型在軟件工程中占有重要地位,是所有其他模型的基礎(chǔ)框架。瀑布模型的每一個(gè)階段都只執(zhí)行一次,因此是線(xiàn)性順序進(jìn)行的軟件開(kāi)發(fā)模式。
瀑布模型流程圖:
主要就是以下幾個(gè)步驟:
瀑布模型的特點(diǎn):
- 線(xiàn)性結(jié)構(gòu),每個(gè)結(jié)構(gòu)只執(zhí)行一次
- 是所有其他模型的基礎(chǔ)框架
瀑布模型的缺點(diǎn):
- 測(cè)試后置.(1)測(cè)試前的各階段遺留的風(fēng)險(xiǎn)推遲到測(cè)試階段才會(huì)被發(fā)現(xiàn),這會(huì)導(dǎo)致項(xiàng)目大規(guī)模返工,失去了早點(diǎn)發(fā)現(xiàn)解決問(wèn)題的機(jī)會(huì). (2) 必須留足夠的時(shí)間給測(cè)試階段,如果測(cè)試不充分,缺陷就會(huì)暴露給用戶(hù).
- 周期太長(zhǎng),產(chǎn)品很遲才能被看到和使用,可能導(dǎo)致需求過(guò)時(shí).
瀑布模型的適用場(chǎng)景: 需求固定的小項(xiàng)目
3.4 螺旋模型
螺旋模型流程圖:
上面這張圖不太好看,接下來(lái)我們用瀑布模型的方式來(lái)理解這張圖.
看這張圖:
螺旋模型與瀑布模型相比增加了 風(fēng)險(xiǎn)分析和原型. 在需求分析,計(jì)劃和設(shè)計(jì)之后要進(jìn)行風(fēng)險(xiǎn)分析,每次風(fēng)險(xiǎn)分析之后就會(huì)得到一個(gè)新的原型.而在經(jīng)過(guò)設(shè)計(jì)之后的風(fēng)險(xiǎn)分析之后就會(huì)得到一個(gè)可執(zhí)行原型.
螺旋模型的特點(diǎn): 增加了 風(fēng)險(xiǎn)分析和原型
螺旋模型的缺點(diǎn):
- 項(xiàng)目中可能存在的風(fēng)險(xiǎn)性和風(fēng)險(xiǎn)管理人才的技能水平有直接關(guān)系
- 需要人員,資金,時(shí)間的成本增加和投入,項(xiàng)目的成本太高
螺旋模型的適用場(chǎng)景: 規(guī)模龐大,復(fù)雜度高,風(fēng)險(xiǎn)大的項(xiàng)目
3.5 增量模型
增量模型流程圖:
增量模型把一個(gè)大的需求分成了一個(gè)個(gè)可獨(dú)立開(kāi)發(fā)上線(xiàn)的功能.
例如一個(gè)項(xiàng)目里面要實(shí)現(xiàn)很多功能,可以先開(kāi)發(fā)里面的一部分功能,開(kāi)發(fā)完成之后就可以先進(jìn)行上線(xiàn),等其它也開(kāi)發(fā)完成之后,再去上線(xiàn)其它功能. 這就是增量模型的流程
3.6 迭代模型
迭代模型就是先完成基本的功能,然后在根據(jù)需求不斷地取改善優(yōu)化這些基本的功能
3.7 敏捷模型
敏捷開(kāi)發(fā)有很多種方式,其中scrum是比較流行的一種。
scrum模型中有三個(gè)角色: 產(chǎn)品經(jīng)理,項(xiàng)目經(jīng)理和研發(fā)團(tuán)隊(duì).
五個(gè)重要會(huì)議:發(fā)布計(jì)劃會(huì)議,迭代計(jì)劃會(huì)議,每日例會(huì),演示會(huì)議和回顧會(huì)議
- 發(fā)布計(jì)劃會(huì)議: 確定最終的需求
- 迭代計(jì)劃會(huì)議: 任務(wù)拆解,確定責(zé)任人,工時(shí)評(píng)估
- 每日例會(huì): 了解當(dāng)前項(xiàng)目的進(jìn)度,每日會(huì)議后要給出"可交付的軟件"
- 演示會(huì)議: 產(chǎn)出用戶(hù)需求
- 回顧會(huì)議:總結(jié)當(dāng)前迭代周期中的不足,并在下一次迭代中進(jìn)行優(yōu)化
敏捷模型的特點(diǎn):1. 輕流程 2. 輕文檔 3. 重目標(biāo) 4. 重產(chǎn)出
4. 測(cè)試模型
以上都是開(kāi)發(fā)模型,測(cè)試模型有V模型和W模型
4.1 V模型
V模型特點(diǎn): 1.測(cè)試過(guò)程中存在不同類(lèi)型的測(cè)試 2.測(cè)試階段的參考標(biāo)準(zhǔn)以前面對(duì)應(yīng)階段為準(zhǔn)
缺點(diǎn): 測(cè)試后置(與前面相同)
4.2 W模型
W模型也稱(chēng)"雙V模型"
W模型增加了軟件各開(kāi)發(fā)階段中應(yīng)同步進(jìn)行的驗(yàn)證和確認(rèn)活動(dòng)。
W模型特點(diǎn):測(cè)試的對(duì)象不僅是程序,需求、設(shè)計(jì)等同樣要測(cè)試,測(cè)試與開(kāi)發(fā)是同步進(jìn)行的
W模型優(yōu)點(diǎn):1.有利于盡早地全面的發(fā)現(xiàn)問(wèn)題。2. 對(duì)需求的測(cè)試也有利于及時(shí)了解項(xiàng)目難度和測(cè)試風(fēng)險(xiǎn),及早制定應(yīng)對(duì)措施,顯著減少總體測(cè)試時(shí)間,加快項(xiàng)目進(jìn)度。
W模型的缺點(diǎn):1. W模型重流程,不適應(yīng)與敏捷模型. 2.測(cè)試和開(kāi)發(fā)活動(dòng)也保持著一種線(xiàn)性的前后關(guān)系,前一項(xiàng)工作完成才能開(kāi)展后一項(xiàng)工作
5. 總結(jié)
本文主要講解了軟件測(cè)試的三個(gè)基本概念,開(kāi)發(fā)模型和測(cè)試模型的特點(diǎn),缺點(diǎn)和適用場(chǎng)景. 概念較多,看起來(lái)也很枯燥乏味,但是掌握基本概念才能更好地學(xué)習(xí)軟件測(cè)試.文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-414197.html
感謝你的觀(guān)看!希望這篇文章能幫到你!
專(zhuān)欄:《軟件測(cè)試》在不斷更新中,歡迎訂閱!
“愿與君共勉,攜手共進(jìn)!”文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-414197.html
到了這里,關(guān)于【軟件測(cè)試】軟件測(cè)試的基本概念和開(kāi)發(fā)模型的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!