目前,有許多描述軟件故障的術(shù)語,比如:缺陷( defect)、失效(failure )、錯誤(error )、故障( fault)等等,這些術(shù)語之間有著細(xì)微的差別,但是又難以說清,總之,有的軟件故障隱藏在代碼中。
如果按照正常的運(yùn)行順序、給出合乎常規(guī)的輸入數(shù)據(jù)就不會輕易暴露出異常,但是無論這些術(shù)語之間存在著怎樣的差別,可以將所有的軟件故障都稱之為軟件缺陷,因此,軟件測試的目標(biāo)就是用有效的技術(shù)和方法發(fā)現(xiàn)軟件中存在的軟件缺陷。
根據(jù)軟件開發(fā)過程,可以將如下幾種情況定義為軟件缺陷:軟件沒有完成需求規(guī)格說明書給出的功能需求。由于理解上的偏差,軟件設(shè)計沒有嚴(yán)格遵循。由于編碼實現(xiàn)與軟件設(shè)計之間的接口出現(xiàn)了問題,使得軟件出現(xiàn)了不應(yīng)有的錯誤,有時甚至無法運(yùn)行。
軟件功能超出了產(chǎn)品說明書預(yù)先指明的范圍。軟件沒有達(dá)到產(chǎn)品說明書雖未指出但應(yīng)該達(dá)到的目標(biāo)。軟件測試人員在實施靜態(tài)分析時,發(fā)現(xiàn)編碼實現(xiàn)冗余,導(dǎo)致運(yùn)行速度緩慢??蛻粽J(rèn)為軟件有缺陷,不能滿足其要求。
當(dāng)然,在實際的軟件開發(fā)過程中,還需要其他一些有效的措施來減少軟件缺陷的產(chǎn)生。比如,在進(jìn)行軟件測試之前,根據(jù)被測軟件的特點組織相關(guān)專家進(jìn)行分析,明確何種類型的軟件故障會出現(xiàn)在被測軟件中,就可以有的放矢地地實施軟件測試。
推薦閱讀:
本文內(nèi)容不用于商業(yè)目的,如涉及知識產(chǎn)權(quán)問題,請權(quán)利人聯(lián)系SPASVO小編(021-60725088-8054),我們將立即處理,馬上刪除。