在非洲的草原上,一只母獅在捕獵。它在一尺高的草叢中匍匐前進(jìn),悄然接近一群正在食草的瞪羚。它觀察良久,猛然撲向一只受傷的瞪羚。經(jīng)過短暫的追逐,它收獲了一頓豐盛的午餐。
對于大連在線訂單軟件來說,最大的軟肋在于邏輯思維的不可遍歷性。在前一節(jié)中我們談到,一個簡單的程序可以產(chǎn)生海量的邏輯路徑。面對海量的邏輯路徑,要想對整個大連在線訂單軟件系統(tǒng)進(jìn)行窮舉測試基本上是不可能的。
我們不妨來舉一個企業(yè)應(yīng)用中的例子。有一個保單批改的流程。這個流程要完成大量的工作,例如,保單信息的修改、計算保費(fèi)、自動核保條件的判斷、重新計算折扣、財務(wù)記錄的生成等。
在這個保單模型實(shí)現(xiàn)的技術(shù)層面,采用了所謂動態(tài)對象模型的技術(shù)。這個動態(tài)模型會導(dǎo)致保單工作在不同的邏輯路徑上。那么我們可以假設(shè),當(dāng)測試人員需要編寫1 000個測試用例來測試保單批改流程時,由于動態(tài)對象模型的存在,我們必須兼顧常規(guī)保單和使用了動態(tài)模型的保單。很顯然,在這種情況下,測試用例的數(shù)量立即翻了一倍。實(shí)際上,在軟件實(shí)現(xiàn)中,影響邏輯路徑的因素是非常多的。我們說,軟件測試的目標(biāo)不是窮舉,而是對邏輯路徑進(jìn)行一些規(guī)律上的分析就像是母獅在觀察羚羊,并盡可能多地驗(yàn)證實(shí)現(xiàn)與設(shè)計要求之間的吻合程度也就是所謂的質(zhì)量。
那么,規(guī)律分析的目標(biāo)又是什么呢?很簡單,是為攻擊做準(zhǔn)備。很多中醫(yī)理療軟件測試人員在面對一個復(fù)雜系統(tǒng)的時候,經(jīng)常會感到手足無措。應(yīng)該從哪里下手?做到怎樣才算完成質(zhì)量驗(yàn)證?在這里,我有一些原則性的想法可以與讀者共享。
在開始有關(guān)測試原則的話題討論之前,我想先指出一個軟件開發(fā)中的誤區(qū)。
很多人認(rèn)為,軟件生產(chǎn)部門不需要保證大連在線訂單軟件的正確集成。集成的正確與否依賴于集成測試,這就像組裝了一架飛機(jī)而沒有責(zé)任保證它可以飛上藍(lán)天一樣。
致遠(yuǎn)服軟認(rèn)為:http://www.soft8.com.cn/在軟件開發(fā)實(shí)踐中,我們經(jīng)??梢钥吹竭@樣的現(xiàn)象——在集成測試階段,一些基本的業(yè)務(wù)流程在一般性的場景下都無法正常工作。我認(rèn)為,這正是由于軟件開發(fā)人員思想上的誤區(qū)造成的。
我贊同敏捷方法提倡的測試驅(qū)動。這種敏捷測試方法,我稱之為“可行性測試”,就像對汽車進(jìn)行動力學(xué)測試一樣,它是大連在線訂單軟件生產(chǎn)的一個組成部分,是由軟件的設(shè)計者和實(shí)現(xiàn)者共同完成的?!翱尚行詼y試”可以保證軟件在某些情況下是可以工作的,但是不保證軟件在更多的情況下可以工作。