一、軟體問題的定義與分類
1. 軟體問題的分類
軟體錯誤(software error)
軟體缺陷(software defect)
軟體故障(software faut)
軟體失效(software faiure)
定義:(1)軟體錯誤:指在軟體生存週期內的不希望或不可接受的人為錯誤,其結果將導致軟體缺陷的產生。
關注點:屬於人為錯誤
(2)軟體缺陷:存在於軟體(程式、資料、文件)之中的那些不希望或不可接受的偏差。
關注點:欠缺或不完備的地方
一般情況下,滿足以下五種情況中的一種,即可存在軟體缺陷。
① 軟體未達到產品說明書中標明的功能。
② 軟體出現了產品說明書中指明的不會出現的錯誤。
③ 軟體功能超出了產品說明書指明的範圍。
④ 軟體未達到產品說明書雖未指出但應達到的目標。
⑤
軟體測試人員認為軟體難以理解、不易使用、執行速度慢,和終端使用者認為不好使用。
(3)軟體故障:指在軟體執行過程**現的不希望或不可接受的內部狀態,若此時無適當的措施(容錯或異常處理機制)加以及時處理,便產生軟體失效。
關注點:內部狀態
(4)軟體失效:指在軟體執行時產生的一種不希望或不可接受的外部行為結果。
關注點:外部行為結果
2. 軟體失效機理
軟體錯誤——>軟體缺陷——>軟體故障——>軟體失效
軟體錯誤是一種人為的錯誤,乙個軟體錯誤必定產生乙個或多個軟體缺陷
當乙個軟體缺陷被啟用時,便產生乙個軟體故障。
同乙個軟體缺陷在不同的條件下被啟用,可能產生不同的軟體故障。
軟體故障若沒被及時的使用容錯加以處理,便不可避免的導致軟體失效。
同乙個軟體故障在不同條件下可能產生不同的軟體失效。
3. 產生軟體錯誤、缺陷的原因
主要原因是開發的軟體與需求說明書、軟體設計說明書的不一致,以及在軟體的實現中,未能達到使用者潛在使用者需求的目標。
二、軟體錯誤的跟蹤與管理
1.缺陷與錯誤嚴重與優先順序
(1) 嚴重級別
嚴重:系統崩潰、資料丟失、資料破壞。
較嚴重:操作性錯誤、錯誤結果、遺漏功能。
一般:小問題、錯別字。
建議:不影響使用的瑕疵或更好的實現。
(2) 優先順序
最高優先順序:立即修復,停止進一步測試。
次高優先順序:在產品發布之前必須修復。
中等優先順序:在產品發布之前應該修復。
最低等優先順序:可能會修復,但是也能發布。
2.軟體錯誤的跟蹤管理
(1)錯誤(bug)資訊的描述
①bug記錄資訊
測試軟體名稱
測試版本號
測試人名稱
測試事件
測試軟體和硬體配置環境
發現軟體錯誤的型別
錯誤的嚴重等級
詳細步驟
必要的附圖
測試注釋
②bug的處理資訊
處理者姓名
處理時間
處理步驟
錯誤記錄的當前狀態
3.軟體錯誤狀態的描述
① 新資訊(new):測試中新報告的軟體錯誤(bug)。
② 開啟(open):錯誤已經被確認並已經分配給相關開發人員處理。
③ 修正(fixed):錯誤已經由開發人員修正完成,等待測試人員驗證。
④ 拒絕(decined):高階測試人員或開發人員認為不是錯誤,拒絕修改bug。
⑤ 延期(deferred):此錯誤不在當前版本中修復,而要到下一版本中修復。
⑥ 關閉(cosed):錯誤已經修復,並已經過驗證。
4.錯誤管理流程
步驟:第一步:測試人員提交新的錯誤資訊,並輸入到錯誤跟蹤管理系統錯誤資訊資料庫中(如td),錯誤狀態置為初始狀態「new」。
第二步:高階測試人員驗證錯誤並做相應處理。
① 如果確認是錯誤,分配給相應的開發人員,把錯誤狀態置為「open」。
② 如果高階測試人員認為這個「new」狀態的「錯誤」不是錯誤,則拒絕修改,把錯誤狀態設定為「decined」。
第三步:開發人員查詢狀態為「open」的所有錯誤,並對錯誤做如下處理:
① 如果開發人員認為這個「open」狀態的錯誤不是錯誤,則拒絕修改,把錯誤狀態設定為「decined」。
② 如果是錯誤,則修復並把錯誤狀態設定為「fixed」。
③ 如果是不能解決的錯誤,要留下文字說明並保持錯誤狀態為「open」。
④ 如果需要延期解決的錯誤,要留下文字說明,把錯誤狀態設定為「deferred」。
注意:對於不能解決的和延期解決的錯誤,不能由開發人員自己決定,一般需要某種會議(評審會)通過才能認可。
第四步:測試人員查詢狀態為「fixed」的所有錯誤,驗證這些錯誤是否已經解決,並做如下處理:
① 如問題解決了,把錯誤狀態設定為「cosed」。
② 如問題還沒解決,重新把錯誤狀態設定為「open」。
5.錯誤流程管理原則
①為了保證錯誤處理的正確性,需要有測試經驗豐富的測試人員驗證發現的錯誤是否是真正的錯誤,書寫的測試步驟是否準確,可以重複。
②每次對錯誤的處理都要保留處理資訊,包括處理姓名、時間、處理方法、處理意見、bug狀態等。
③拒絕或延期處理錯誤不能由程式設計師單方面決定,應由專案經理、測試經理和設計經理共同決定。
④錯誤修復後必須由報告錯誤的測試人員驗證,確認已經修復後,才能關閉錯誤。
⑤加強測試人員與程式設計師之間的交流,對於「deferred」狀態的錯誤,需要互相交流意見,避免真正的錯誤被遺漏。對於某些不能重複的錯誤,可以請測試人員補充詳細的測試步驟和方法,以及必要的測試用例。
軟體缺陷的分類與管理
軟體缺陷的分類與管理 通常大家發現軟體缺陷時會對軟體缺陷進行分類,可分類的方式只有一種,就是嚴重極別,難道沒有其它的分法嗎。比如我們碰到下面這種情況,測試人員發現有一種功能是必需加入進去的,這時他與程式設計師說,程式設計師說沒有時間或是不必要,這時這種情況則會形成兩者的扯皮,最終的結果也就不了了知了...
軟體測試的定義與分類
一 軟體的分類 二 什麼是軟體測試 三 軟體測試的目的 四 軟體測試的分類 五 環境分類 六 常見筆試面試題 程式 是按實現設計的功能和效能要求執行的指令序列。文件 是與開發 維護和使用有關的 材料。windows linux dos系統 ios系統 mysql等。書面定義 為了發現程式中的錯誤而執...
軟體定義與分類1 1
1 1983年ieee的軟體定義 電腦程式,文件,執行程式必須的資料,方法,規則。方法和規則在文件中說明,在程式中實現。2 簡化軟體定義 程式 文件 資料 1 系統軟體 與計算機硬體緊密配合使計算機各個部件與相關軟體及資料協調,高效工作的軟體。如作業系統,編譯程式等。2 支撐軟體 協助使用者開發軟體...