詳情描述
千鋒老師總結(jié)了七項軟件測試原則,一起來學(xué)習(xí)一下吧!
1.測試盡早介入
從分析不同的測試模型來看,測試介入的越早越好。
為什么測試要盡早介入呢?
這要先弄清楚軟件測試的目的是什么?簡單的來說就是確保軟件質(zhì)量,降 。
測試人員一般都在需求階段就開始介入,這時測試的對象就是需求。
軟件測試的目的是確保質(zhì)量,預(yù)防風(fēng)險,降 ,其中成本包括缺陷的修復(fù)成本,缺陷有一個特點就是越早發(fā)現(xiàn)的缺陷,修復(fù)成本越低,這也是為什么測試要盡早介入,就是為了能夠在需求階段就能找出需求與設(shè)計方面的缺陷,降低后期的修復(fù)成本。
2.窮盡測試是不可能
現(xiàn)在的軟件規(guī)模越來越大,復(fù)雜度越來越高,想做到完全性的測試就完全不可能的。就是軟件的規(guī)模和復(fù)雜度有所減少,但要做完全也測試也是不能做到。
那在測試階段,軟件測試人員可以根據(jù)風(fēng)險和優(yōu)先級來進(jìn)行集中測試和高強(qiáng)度測試,從而確保軟件的質(zhì)量。
3.測試顯示軟件存在缺陷
軟件測試只能證實軟件中存在缺陷,但是并不能證明軟件中不存在缺陷,只能降低軟件存在缺陷的可能性。
如果說公司的決策層想用軟件測試來證明軟件中不存在缺陷,那是行不通的。測試人員只能證明軟件中存在缺陷,但并不能證明軟件中沒有缺陷,軟件完美。
軟件測試人員可以用軟件測試活動,找出軟件中大部分缺陷,避免軟件在上線后給用戶帶損失,給公司帶來風(fēng)險。
4.缺陷集群性(28原則)
世界上萬事萬物都符合二八原則,比如著名的財富理論:世界20%的人掌握了世界上80%的財富。
還有成長理論:判斷一個人是否成功,主要看他20%的業(yè)余時間做什么事情。
軟件測試也符合二八原則:
1.功能:一個軟件20%為主要功能,會花費(fèi)軟件測試人員80%的時間。
2.缺陷:一個功能模塊發(fā)現(xiàn)的缺陷越高,那存在的未被發(fā)現(xiàn)的缺陷也越高,故,發(fā)現(xiàn)的缺陷與未發(fā)現(xiàn)的缺陷成正比。
5.殺蟲劑悖論
只要做過軟件測試的測試人員都會發(fā)現(xiàn)一個有趣的現(xiàn)象:
開發(fā)剛轉(zhuǎn)測當(dāng)天,測試人員是一個bug接一個bug的提,但隨著測試進(jìn)度的推進(jìn),每天發(fā)現(xiàn)在的缺陷會越來越少,直到不能夠發(fā)現(xiàn)缺陷。
但是能說這個軟件中不存在缺陷么?千鋒老師相信哪個測試人員都沒有這樣的自信確保自己測試的軟件中沒有bug了,那為什么明明存在缺陷,而測試人員就是發(fā)現(xiàn)不了呢?
這是因為測試人員對缺陷產(chǎn)生了免疫能力,就算是一個bug放在測試人員面前,測試人員也不一定能發(fā)現(xiàn)。這就像害蟲對殺蟲劑產(chǎn)生了免疫,殺不死一樣的。
那應(yīng)該怎么解決這個問題呢?千鋒老師相信這是所有測試人員都關(guān)注的一個問題。
解決方案有:
1. 內(nèi)部測試人員交叉測試,這也是千鋒老師經(jīng)常提到的一個方法。
2.測試用例常用常更新,在測試過程中根據(jù)軟件的特性修改測試用例。
3.不變地變化測試方法,不要使用單一的測試方法去測試軟件,根據(jù)軟件內(nèi)容使用不同的測試手段、測試方法。
根據(jù)上面三種方法交叉執(zhí)行,從而發(fā)現(xiàn)更多的缺陷,確保軟件質(zhì)量,降 。
那真的無錯的軟件就是好的軟件么?
假設(shè)一個軟件完全沒有bug,完美無缺,但是不符合用戶的需求,那能說這個軟件是OK的么?
所以判斷一個軟件的好與不好,主要依據(jù)的還是用戶需求,是否實現(xiàn)用戶所期盼的結(jié)果。
千鋒教育:
千鋒西安校區(qū):
西安校區(qū)地址:西安市塔區(qū)高新六路52號立人科技C座西區(qū)4樓
面授課程:全棧WEB+培訓(xùn)、全鏈路設(shè)計培訓(xùn)、PHP全棧+服務(wù)器集群培訓(xùn)、JavaEE+分布式開發(fā)培訓(xùn)、大數(shù)據(jù)+人工智能培訓(xùn)、 Unity游戲開發(fā)培訓(xùn)、Python培訓(xùn)、云計算+Python運(yùn)維培訓(xùn)、全棧軟件測試培訓(xùn)、Android培訓(xùn)、iOS培訓(xùn)