qileilove

          blog已經轉移至github,大家請訪問 http://qaseven.github.io/

          軟件問題的分類與管理

           一、軟件問題的定義與分類
            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”狀態的錯誤,需要互相交流意見,避免真正的錯誤被遺漏。對于某些不能重復的錯誤,可以請測試人員補充詳細的測試步驟和方法,以及必要的測試用例。

          posted on 2014-08-20 09:38 順其自然EVO 閱讀(288) 評論(0)  編輯  收藏 所屬分類: 測試學習專欄

          <2014年8月>
          272829303112
          3456789
          10111213141516
          17181920212223
          24252627282930
          31123456

          導航

          統計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 班玛县| 莱阳市| 苍山县| 维西| 武邑县| 西乡县| 岳西县| 南溪县| 临泽县| 龙岩市| 江北区| 轮台县| 铁力市| 全椒县| 建湖县| 安庆市| 博野县| 玛沁县| 平昌县| 汉川市| 井冈山市| 通城县| 华安县| 海晏县| 保康县| 邵武市| 思南县| 霍林郭勒市| 郸城县| 济阳县| 正安县| 阿瓦提县| 贵州省| 宜兰县| 东阳市| 禹州市| 仁寿县| 安乡县| 桃源县| 民权县| 望城县|