軟體缺陷的種類劃分

2021-09-30 22:23:21 字數 2730 閱讀 5504

按照軟體缺陷的產生原因,可以將其劃分為不同的缺陷類別:

1、功能不正常

簡單地說就是所應提供的功能,在使用上並不符合產品設計規格說明書中規定的要求,或是根本無法使用。這個錯誤常常會發生在測試過程的初期和中期,有許多在設計規格說明書中規定的功能無法執行,或是執行結果達不到預期設計。最明顯的例子就是在使用者介面上所提供的選項及動作,使用者操作後毫無反應。

2、軟體在使用上感覺不方便

只要是不知如何使用或難以使用的軟體,在產品設計上一定是出了問題。所謂好用的軟體,就是使用上盡量方便,使使用者易於操作。如微軟推出的軟體,在使用者介面及使用操作上確實是下了一番功夫。有許多軟體公司推出的軟體產品,在彼此的介面上完全不同,這樣其實只會增加使用者的學習難度,另一方面也凸顯了這些軟體公司的整合能力不足。

3、軟體的結構未做良好規劃

這裡主要指軟體是以自頂向下方式開發,還是以自底向上方式開發。如果是以自頂向下的結構或方法開發的軟體,在功能的規劃及組織上比較完整,相反以自底向上的組合式方法開發處的軟體則功能較為分散,容易出現缺陷。

4、提供的功能不充分

這個問題與功能不正常不同,這裡指的是軟體提供的功能在運作上正常,但對於使用者而言卻不完整。即使軟體的功能運作結果符合設計規格的要求,系統測試人員在測試結果的判斷上,也必須從使用者的角度進行思考,這就是所謂的「從使用者體驗出發」。

5、與軟體操作者的互動不良

6、使用效能不佳

被測軟體功能正常,但使用效能不佳,這也是乙個問題。此類缺陷通常是由於開發人員採用了錯誤的解決方案,或使用了不恰當的演算法導致的,在實際測試中有很多缺陷都是因為採用了錯誤的解決方法,需要加以注意!

7、為做好錯誤處理

軟體除了避免出錯之外,還要做好錯誤處理,許多軟體之所以會產生錯誤,就是因為程式本身對於錯誤和異常處理的缺失。例如被測軟體讀取外部的資訊檔案並已做了一些分類整理,但剛好所讀取的外部資訊檔案內容已被損毀。當程式讀取這個損毀的資訊檔案時,程式發現問題,此時作業系統不知該如何處理這個情況,為保護系統自身只好中斷程式。由此可見設立錯誤和異常處理機制的重要性!

8、邊界錯誤

緩衝區溢位問題在這幾年已成為網路攻擊的常用方式,而這個缺陷就屬於邊界錯誤的一種。簡單來說,程式本身無法處理超越邊界所導致的錯誤。而這個問題,除了程式語言所提供的函式有問題之外,很多情況下是由於開發人員在宣告變數或使用邊界範圍時不小心引起的。

下面是乙個典型的緩衝區溢位的邊界錯誤:

void func (void)

9、計算錯誤

只要是電腦程式,就必定包括數學計算。軟體之所以會出現計算錯誤,大部分出錯的原因是由於採用了錯誤的數**算工時或未將累加器初始化為0.

10、使用一段時間所產生的錯誤

這類問題是程式開始執行正常,但執行一段時間後卻出現了故障。最典型的例子就是資料庫的查詢功能。某些軟體在剛開始使用時,所提供的資訊查詢功能運作良好,但在使用一段時間後發現,進行資訊查詢所需的時間越來越長。經分析查明,程式採用的資訊查詢方式是順序查詢,隨著資料庫資訊的增加,查詢時間自然會變長。這就需要改變解決方案了!

11、控制流程的錯誤

控制流程的好壞,在於開發人員對軟體開發的態度及程式設計是否嚴謹。軟體在狀態間的轉變是否合理,要依據業務流程進行控制。例如,用軟體安裝程式解釋這類問題最方便直觀。使用者在進行軟體安裝時,輸入使用者名稱和一些資訊後,軟體就直接進行了安裝,未提示使用者變更安裝路徑、目的地等。這就是軟體控制流程不完整導致的錯誤問題。

12、在大資料量壓力下所產生的錯誤

程式在處於大資料量狀態下執行出現問題,就屬於這類軟體錯誤。大資料量壓力測試對於server級的軟體是必須進行的一項測試,因為伺服器級的軟體對穩定性的要求遠比其它軟體要高。通常連續的大資料量壓力測試是必須實施的,如讓程式處理超過10萬筆資料資訊,再來觀察程式執行的結果。

13、在不同硬體環境下產生的錯誤

這類問題的產生與硬體環境的不同相關。如果軟體與硬體裝置有直接關係,這樣的問題就是數量相當多。例如有些軟體在特殊品牌的伺服器上執行就會出錯,這是由於不同的server內部硬體了不同的處理機制。

14、版本控制不良導致的錯誤

出現這樣的問題屬於專案管理的疏忽,當然測試人員未能盡忠職守也是原因之一。例如乙個軟體被反映有安全上的漏洞,後來軟體公司也很快將修復版本提供給使用者。但在一年後他們推出新版本時,卻忘記將這個已解決的bug-fix加入到新版本中。所以對使用者來說,原本的問題已經解決了,但想不到新版本公升級之後,問題又出現了。這就是由於版本控制問題,導致不同基線的merge出現誤差,使得產品質量也出現了偏差。

15、軟體文件的錯誤

最後這類缺陷是軟體文件錯誤。這裡所提及的錯誤,除了軟體所附帶的使用手冊、說明文件及其它相關的軟體文件內容錯誤之外,還包括軟體使用介面上的錯誤文字和錯誤用語、產品需求設計pd、ui spec等的錯誤。錯誤的軟體文件內容除了降低產品質量外,最主要的問題是會誤導使用者!

***********************************=分割線******************************==

軟體測試缺陷等級劃分 如何進行軟體缺陷等級定義?

當我們的測試人員辛辛苦苦地完成了測試活動,發現了軟體中的bug,而這只是讓測試活動發揮出其效能的第一步。接下來,測試人員要對bug進行準確地描述,缺陷現象 產生條件等等都要描述清楚,同時也要給出合理的軟體缺陷等級定義 這個軟體缺陷處於哪個問題等級。今天主要想討論下軟體缺陷等級的問題。這是因為軟體缺陷...

軟體缺陷分析

alan 缺陷分析本質上是對缺陷中包含的資訊項進行收集,彙總,分類之後使用統計方法 或者分析模型 得出分析結果。缺陷分析得出的結果可以用來度量軟體開發過程中各階段中工作產品的質量,了解缺陷集中的區域,明晰缺陷發展趨向。對於軟體過程的改進,軟體產品的發布來說具有十分重要的參考價值 在我們提交缺陷報告的...

軟體缺陷分析

我在marvell實習了一年多,期間主要做的軟體缺陷分析的工作,比如軟體缺陷的度量,風險分析等,結果一年多的不斷學習,我覺得這件事是非常的有意義,然後,國內很少有公司會選擇在這一塊投入,主要原因是這個過程需要長期的投入才能見成效,其次,風險也比較大。我主要會做一些軟體缺陷的分類統計,和缺陷累積量的 ...