網(wǎng)站建造中關(guān)于測驗(yàn)的相關(guān)名詞解析 |
發(fā)布時(shí)間:2020-09-23 文章來源:本站 瀏覽次數(shù):2996 |
關(guān)于過錯(cuò) 因?yàn)閷?duì)過錯(cuò)有不同的了解和知道,所以目前還沒有一個(gè)一致的過錯(cuò)分類辦法。過錯(cuò)難于分類的原因,一方面是因?yàn)橐粋(gè)過錯(cuò)有許多預(yù)兆,因此它能夠被歸入不同的類。因此DEF檢驗(yàn)中呈現(xiàn)的過錯(cuò)甲方主張按照(1)分類 (1) 按過錯(cuò)的影響和后果分類 § 較小過錯(cuò):只對(duì)體系輸出有一些非實(shí)質(zhì)性影響。如,輸出的數(shù)據(jù)格局不合要求等。 § 中等過錯(cuò):對(duì)體系的運(yùn)轉(zhuǎn)有部分影響。如輸出的某些數(shù)據(jù)有過錯(cuò)或呈現(xiàn)冗余。 § 較嚴(yán)峻過錯(cuò):體系的行為因過錯(cuò)的干擾而呈現(xiàn)明顯不合情理的現(xiàn)象。比方開出了0.00元的支票,體系的輸出徹底不可信賴。 § 嚴(yán)峻過錯(cuò):體系運(yùn)轉(zhuǎn)不可跟蹤,一時(shí)不能把握其規(guī)律,時(shí)好時(shí)壞。 § 非常嚴(yán)峻的過錯(cuò):體系運(yùn)轉(zhuǎn)中突然停機(jī),其原因不明,無法軟啟動(dòng)。 § 最嚴(yán)峻的過錯(cuò):體系運(yùn)轉(zhuǎn)導(dǎo)致環(huán)境損壞,或是形成事端,引起生命、財(cái)產(chǎn)的損失。 (2) 按過錯(cuò)的性質(zhì)和范圍分類 B.Beizer從軟件測驗(yàn)觀點(diǎn)動(dòng)身,把軟件過錯(cuò)分為5類。 ① 功用過錯(cuò) § 規(guī)范闡明過錯(cuò):規(guī)范闡明或許不徹底,有二義性或自身對(duì)立。 § 功用過錯(cuò):程序完成的功用與用戶要求的不一致。這常常是因?yàn)橐?guī)范闡明中包含過錯(cuò)的功用、剩余的功用或遺漏的功用所造成的。 § 測驗(yàn)過錯(cuò):軟件測驗(yàn)的規(guī)劃與施行產(chǎn)生過錯(cuò)。軟件測驗(yàn)自身也或許產(chǎn)生過錯(cuò)。 § 測驗(yàn)規(guī)范引起的過錯(cuò):對(duì)軟件測驗(yàn)的規(guī)范要挑選恰當(dāng),若測驗(yàn)規(guī)范太雜亂,則導(dǎo)致測驗(yàn)進(jìn)程犯錯(cuò)的或許就大。 ② 體系過錯(cuò) § 外部接口過錯(cuò):外部接口指如終端、打印機(jī)、通信線路等體系與外部環(huán)境通信的手段。所有外部接口之間,人與機(jī)器之間的通信都運(yùn)用形式的或非形式的專門協(xié)議。如果協(xié)議有錯(cuò),或太雜亂,難以了解,致使在運(yùn)用中犯錯(cuò)。此外還包含對(duì)輸入/輸出格局過錯(cuò)了解,對(duì)輸入數(shù)據(jù)不合理的容錯(cuò)等等。 § 內(nèi)部接口過錯(cuò):內(nèi)部接口指程序之間的聯(lián)系。它所產(chǎn)生的過錯(cuò)與程序內(nèi)完成的細(xì)節(jié)有關(guān)。例如,規(guī)劃協(xié)議錯(cuò)、輸入/輸出格局錯(cuò)、數(shù)據(jù)保護(hù)不可靠、子程序訪問錯(cuò)等。 § 硬件結(jié)構(gòu)過錯(cuò):這類過錯(cuò)在于不能正確地了解硬件如何工作。例如,忽視或過錯(cuò)地了解分頁組織、地址生成、通道容量、I/O指令、中止處理、設(shè)備初始化和啟動(dòng)等而導(dǎo)致的犯錯(cuò)。 § 操作體系過錯(cuò):這類過錯(cuò)首要是因?yàn)椴涣私獠僮黧w系的工作機(jī)制而導(dǎo)致犯錯(cuò)。。當(dāng)然,操作體系自身也有過錯(cuò),但是一般用戶很難發(fā)現(xiàn)這種過錯(cuò)。 § 軟件結(jié)構(gòu)過錯(cuò):因?yàn)檐浖Y(jié)構(gòu)不合理或不明晰而引起的過錯(cuò)。這種過錯(cuò)一般與體系的負(fù)載有關(guān),并且往往在體系滿載時(shí)才呈現(xiàn)。這是最難發(fā)現(xiàn)的一類過錯(cuò)。例如,過錯(cuò)地設(shè)置部分參數(shù)或大局參數(shù);過錯(cuò)地假定寄存器與存儲(chǔ)器單元初始化了;過錯(cuò)地假定不會(huì)產(chǎn)生中止而導(dǎo)致不能封鎖或開中止;過錯(cuò)地假定程序能夠繞過數(shù)據(jù)的內(nèi)部鎖而導(dǎo)致不能封閉或翻開內(nèi)部鎖;過錯(cuò)地假定被調(diào)用子程序常駐內(nèi)存或非常駐內(nèi)存等等,都將導(dǎo)致軟件犯錯(cuò)。 § 操控與順序過錯(cuò):這類過錯(cuò)包含:忽視了時(shí)刻要素而損壞了事情的順序;猜想事情呈現(xiàn)在指定的序列中;等待一個(gè)不或許產(chǎn)生的條件;漏掉先決條件;規(guī)定過錯(cuò)的優(yōu)先級(jí)或程序狀況;漏掉處理過程;存在不正確的處理過程或剩余的處理過程等。 § 資源管理過錯(cuò):這類過錯(cuò)是因?yàn)椴徽_地運(yùn)用資源而產(chǎn)生的。例如,運(yùn)用未經(jīng)獲準(zhǔn)的資源;運(yùn)用后未釋放資源;資源死鎖;把資源鏈接在過錯(cuò)的行列中等等。 ③ 加工過錯(cuò) § 算術(shù)與操作過錯(cuò):指在算術(shù)運(yùn)算、函數(shù)求值和一般操作進(jìn)程中產(chǎn)生的過錯(cuò)。包含:數(shù)據(jù)類型轉(zhuǎn)化錯(cuò);除法溢出;過錯(cuò)地運(yùn)用聯(lián)系比較符;用整數(shù)與浮點(diǎn)數(shù)做比較等。 § 初始化過錯(cuò):典型的過錯(cuò)有:忘掉初始化工作區(qū),忘掉初始化寄存器和數(shù)據(jù)區(qū);過錯(cuò)地對(duì)循環(huán)操控變量賦初值;用不正確的格局,數(shù)據(jù)或類型進(jìn)行初始化等等。 § 操控和次序過錯(cuò):這類過錯(cuò)與體系級(jí)同名過錯(cuò)相似,但它是部分過錯(cuò)。包含:遺漏途徑;不可到達(dá)的代碼;不符合語法的循環(huán)嵌套;循環(huán)返回和停止的條件不正確;漏掉處理過程或處理過程有錯(cuò)等。 § 靜態(tài)邏輯過錯(cuò):這類過錯(cuò)首要包含:不正確地運(yùn)用CASE語句;在表達(dá)式中運(yùn)用不正確的否定(例如用“>”代替“<”的否定);對(duì)情況不恰當(dāng)?shù)胤纸馀c組合;混雜“或”與“異或”等。 ④ 數(shù)據(jù)過錯(cuò) § 動(dòng)態(tài)數(shù)據(jù)過錯(cuò):動(dòng)態(tài)數(shù)據(jù)是在程序履行進(jìn)程中暫時(shí)存在的數(shù)據(jù)。各種不同類型的動(dòng)態(tài)數(shù)據(jù)在程序履行期間將共享一個(gè)共同的存儲(chǔ)區(qū)域,若程序啟動(dòng)時(shí)對(duì)這個(gè)區(qū)域未初始化,就會(huì)導(dǎo)致數(shù)據(jù)犯錯(cuò)。因?yàn)閯?dòng)態(tài)數(shù)據(jù)被損壞的位置或許與犯錯(cuò)的位置在距離上相差很遠(yuǎn),因此要發(fā)現(xiàn)這類過錯(cuò)比較困難。 § 靜態(tài)數(shù)據(jù)過錯(cuò):靜態(tài)數(shù)據(jù)在內(nèi)容和格局上都是固定的。它們直接或間接地呈現(xiàn)在程序或數(shù)據(jù)庫中。由編譯程序或其它專門程序?qū)λ鼈冏鲱A(yù)處理。這是在程序履行前防止靜態(tài)過錯(cuò)的好辦法,但預(yù)處理也會(huì)犯錯(cuò)。 § 數(shù)據(jù)內(nèi)容過錯(cuò):數(shù)據(jù)內(nèi)容是指存儲(chǔ)于存儲(chǔ)單元或數(shù)據(jù)結(jié)構(gòu)中的位串、字符串或數(shù)字。數(shù)據(jù)內(nèi)容自身沒有特定的意義,除非通過硬件或軟件給予解說。數(shù)據(jù)內(nèi)容過錯(cuò)就是因?yàn)閮?nèi)容被損壞或被過錯(cuò)地解說而形成的過錯(cuò)。 § 數(shù)據(jù)結(jié)構(gòu)過錯(cuò):數(shù)據(jù)結(jié)構(gòu)是指數(shù)據(jù)元素的大小和組織形式。在同一存儲(chǔ)區(qū)域中能夠界說不同的數(shù)據(jù)結(jié)構(gòu)。數(shù)據(jù)結(jié)構(gòu)過錯(cuò)首要包含結(jié)構(gòu)闡明過錯(cuò)及把一個(gè)數(shù)據(jù)結(jié)構(gòu)誤作為另一類數(shù)據(jù)結(jié)構(gòu)運(yùn)用的過錯(cuò)。這是更風(fēng)險(xiǎn)的過錯(cuò)。 § 數(shù)據(jù)特點(diǎn)過錯(cuò):數(shù)據(jù)特點(diǎn)是指數(shù)據(jù)內(nèi)容的意義或語義。例如,整數(shù)、字符串、子程序等等。數(shù)據(jù)特點(diǎn)過錯(cuò)首要包含:對(duì)數(shù)據(jù)特點(diǎn)不正確地解說,比方錯(cuò)把整數(shù)當(dāng)實(shí)數(shù),允許不同類型數(shù)據(jù)混合運(yùn)算而導(dǎo)致的過錯(cuò)等。 ⑤ 代碼過錯(cuò) 首要包含:語法過錯(cuò);打字過錯(cuò);對(duì)語句或指令不正確了解所產(chǎn)生的過錯(cuò)。 (3) 按軟件生存期階段分類 Good enough-Gerhart分類辦法把軟件的邏輯過錯(cuò)按生存期不同階段分為4類。 ① 問題界說(需求分析)過錯(cuò) 它們是在軟件界說階段,分析員研討用戶的要求后所編寫的文檔中呈現(xiàn)的過錯(cuò)。換句話說,這類過錯(cuò)是因?yàn)閱栴}界說不滿足用戶的要求而導(dǎo)致的過錯(cuò)。 ② 規(guī)范闡明過錯(cuò) 這類過錯(cuò)是指規(guī)范闡明與問題界說不一致所產(chǎn)生的過錯(cuò)。它們又能夠細(xì)分紅: § 不一致性過錯(cuò):規(guī)范闡明中功用闡明與問題界說產(chǎn)生對(duì)立。 § 冗余性過錯(cuò):規(guī)范闡明中某些功用闡明與問題界說比較是剩余的。 § 不完整性過錯(cuò):規(guī)范闡明中短少某些必要的功用闡明。 § 不可行過錯(cuò):規(guī)范闡明中有些功用要求是不可行的。 § 不可測驗(yàn)過錯(cuò):有些功用的測驗(yàn)要求是不現(xiàn)實(shí)的。 ③ 規(guī)劃過錯(cuò) 這是在規(guī)劃階段產(chǎn)生的過錯(cuò),它使體系的規(guī)劃與需求規(guī)范闡明中的功用闡明不相符。它們又能夠細(xì)分為: § 規(guī)劃不徹底過錯(cuò):某些功用沒有被規(guī)劃,或規(guī)劃得不徹底。 § 算法過錯(cuò):算法挑選不合適。首要表現(xiàn)為算法的基本功用不滿足功用要求、算法不可行或許算法的效率不符合要求。 § 模塊接口過錯(cuò):模塊結(jié)構(gòu)不合理;模塊與外部數(shù)據(jù)庫的界面不一致,模塊之間的界面不一致。 § 操控邏輯過錯(cuò):操控流程與規(guī)范闡明不一致;操控結(jié)構(gòu)不合理。 § 數(shù)據(jù)結(jié)構(gòu)過錯(cuò):數(shù)據(jù)規(guī)劃不合理;與算法不匹配;數(shù)據(jù)結(jié)構(gòu)不滿足規(guī)范闡明要求。 ④ 編碼過錯(cuò) 編碼進(jìn)程中的過錯(cuò)是多種多樣的,大體可歸為以下幾種:數(shù)據(jù)闡明錯(cuò)、數(shù)據(jù)運(yùn)用錯(cuò)、計(jì)算錯(cuò)、比較錯(cuò)、操控流錯(cuò)、界面錯(cuò)、輸入/輸犯錯(cuò),及其它的過錯(cuò)。 在不同的開發(fā)階段,過錯(cuò)的類型和表現(xiàn)形式是不同的,故應(yīng)當(dāng)選用不同的辦法和策略來進(jìn)行檢測。 |
|