更新時間:2022-09-09 來源:黑馬程序員 瀏覽量:
軟件測試經(jīng)過幾十年的發(fā)展,人們提出了很多測試的基本原則用于指導軟件測試工作。制定軟件測試的基本原則有助于提高測試工作的效率和質(zhì)量,能讓測試人員以最少的人力、物力、時間等盡早發(fā)現(xiàn)軟件中存在的問題,測試人員應該在測試原則的指導下進行測試工作。
1.測試應基于客戶需求
所有的測試工作都應該建立在滿足客戶需求的基礎(chǔ)上,從客戶角度來看,最嚴重的錯誤就是軟件無法滿足要求。有時候,軟件產(chǎn)品的測試結(jié)果非常完美,但卻不是客戶最終想要的產(chǎn)品,那么軟件產(chǎn)品的開發(fā)就是失敗的,而測試工作也是沒有任何意義的。因此測試應依照客戶的需求配置環(huán)境,并且按照客戶的使用習慣進行測試并評價結(jié)果。
2.測試要盡早進行
軟件的錯誤存在于軟件生命周期的各個階段,因此應該盡早開展測試工作,把軟件測試貫穿到軟件生命周期的各個階段中,這樣測試人員能夠盡早地發(fā)現(xiàn)和預防錯誤,降低錯誤修復的成本。盡早地開展測試工作有利于幫助測試人員了解軟件產(chǎn)品的需求和設(shè)計,從而預測測試的難度和風險,制訂出完善的計劃和方案,提高測試的效率。
3.窮盡測試是不可能的
由于時間和資源的限制,進行完全(各種輸入和輸出的組合)的測試是不可能的,測試人員可以根據(jù)測試的風險和優(yōu)先級等確定測試的關(guān)注點,從而控制測試的工作量,在測試成本、風險和收益之間求得平衡。
4.遵循GoogEnough原則
GoogEnough原則是指測試的投入與產(chǎn)出要適當權(quán)衡,形成充分的質(zhì)量評估過程,這個過程建立在測試花費的代價之上。測試不充分無法保證軟件產(chǎn)品的質(zhì)量,但測試投入過多會造成資源的浪費。隨著測試資源投入的增加,測試的產(chǎn)出也是增加的,當投入達到一定的比例后,測試的結(jié)果就不會明顯的增強了。因此在測試時要根據(jù)實際要求和產(chǎn)品質(zhì)量考慮測試的投入,最好使測試投入與產(chǎn)出達到一個GoodEnough狀態(tài)。
5.測試缺陷要符合“二八”定理
缺陷的“二八”定理也稱為Pareto原則、缺陷集群效應,一般情況下,軟件80%的缺陷會集中在20%的模塊中,缺陷并不是平均分布的。因此在測試時,要抓住主要矛盾,如果發(fā)現(xiàn)某些模塊比其他模塊具有更多的缺陷,則要投入更多的人力、精力重點測試這些模塊以提高測試效率。
6.避免缺陷免疫
我們都知道蟲子的抗藥性原理,即一種藥物使用久了,蟲子就會產(chǎn)生抗藥性。而在軟件測試中,缺陷也是會產(chǎn)生免疫性的。同樣的測試用例被反復使用,發(fā)現(xiàn)缺陷的能力就會越來越差;測試人員對軟件越熟悉越會忽略一些看起來比較小的問題,發(fā)現(xiàn)缺陷的能力也越差,這種現(xiàn)象被稱為軟件測試的“殺蟲劑”現(xiàn)象。它主要是由于測試人員沒有及時更新測試用例或者是對測試用例和測試對象過于熟悉,形成了思維定式。
要克服這種情況,就要不斷對測試用例進行修改和評審,不斷增加新的測試用例,同時,測試人員也要發(fā)散思維,不能只是為了完成測試任務而做一些輸入和輸出的對比。
最后,沒有缺陷的軟件是不存在的,軟件測試是為了找出軟件測試中的缺陷,而不是為了證明軟件測試沒有缺陷。