軟體存在著不符合質量需求或違背軟體使用者、客戶、企業意願的問題,這就是軟體缺陷
(defect),又叫「bug(臭蟲)」。
軟體未達到產品說明書標明的功能;
產品說明書簡稱為說明(spec)或產品說明(product spec),是軟體開發小組
的乙個協定。它對開發的產品進行定義,給出產品的細節、如何做、做什麼、
不能做什麼。這種協定從簡單的口頭說明到正式的書面文件有多種形式。
軟體出現了產品說明書指明不會出現的錯誤;
如金融軟體 7*24 工作不能宕機
軟體功能超出產品說明書指明範圍;
軟體未達到產品說明書雖未指出但應達到的目標;
如軟體在斷電時的意外處理
軟體測試員認為軟體難以理解、不易使用、執行速度緩慢,或者終端使用者認為不好。
主要體現在易用性方面。
使用者要求的功能、特性沒有實現或部分實現。
執行出錯,包括執行中斷、系統崩潰、介面混亂等。
資料結果不正確、精度不夠、不完整或格式不統一。
文字顯示內容不正確或拼寫錯誤。
系統效能低下、系統資源浪費。
發現缺陷後,應該做好分離和再現,排查發現的「缺陷」是不是軟體本身的問題,
然後才能提交。
再現 3 次
重現
復現
缺陷的缺陷
是測試人員提交的不是缺陷的缺陷;
是一種無效缺陷;
此類缺陷常使測試人員遭受指責。
怎麼辦 正確理解需求;
做好復現。
重複缺陷
同乙個缺陷 a 測試工程師提交後,b 測試工程師又提交或者自己提交的缺陷
與之前提交的缺陷相同或類似;
是一種無效缺陷;
怎麼辦 盡量避免兩個人同時測試同一模組;
自己提交的缺陷與自己的重複,提交前查詢一下,增強開發知識。
首先,對這樣的缺陷進行詳細的記錄,使用不同辦法去嘗試復現。
其次,要合理地安排時間,要考慮到測試專案的整體進度,對一時難以再現的缺陷
可以暫時擱置,以保證專案的正常進度,並盡快提交給開發人員。
最後,在測試過程中對未再現缺陷予以關注。
跟有關人員進行溝通、討論;
擱置。
缺陷報告是對缺陷進行記錄、分類和跟蹤的文件。
軟體開發人員
報告缺陷是為了缺陷得到修復。
希望獲得缺陷的本質特徵和復現步驟。
質量管理人員、市場人員、技術支援人員
希望獲得缺陷的嚴重程度和分布情況,以及對市場和使用者的影響程度。
correct(準確)
每個組成部分的描述準確,不會引起誤解;
clear(清晰)
每個組成部分的描述清晰,易於理解;
concise(簡潔)
只包含必不可少的資訊,不包括任何多餘的內容;
complete(完整)
包含復現該缺陷的完整步驟和其他本質資訊;
consistent(一致)
按照一致的格式書寫全部缺陷報告。
5.1 缺陷標題
盡量按缺陷發生的原因與結果的方式書寫;
執行完 a 後,發生 b;
在什麼地方,做了什麼事情,出了什麼結果;
使用「在…以後」,「在…時候」或「在…期間」等鏈結詞有助於描
述缺陷的原因和結果。
避免使用模糊不清的詞語;
為了方便搜尋和查詢,盡量使用關鍵字;
為了便於他人理解,避免使術語、俚語或過分具體的測試細節。
5.2 復現步驟
提供測試的預備步驟和資訊;
步驟完整,準確,簡短,沒有缺漏任何操作步驟,沒有任何多餘的步驟;
將常見步驟合併為較少步驟;
簡單地一步一步地引導復現該缺陷;
每乙個步驟盡量只記錄乙個操作;
每乙個步驟前使用數字對步驟編號;
盡量使用短語和短句,避免複雜句型和句式;
只記錄各個操作步驟是什麼,不要包括每個步驟的執行結果。
5.3 預期結果
軟體應該具有的結果,或者說正確結果應該是什麼樣子。
5.4 實際結果
實際結果的描述要列出具體的表現行為,而不是簡單的指出「不正確」或「不起作
用」。 如果乙個動作產生彼此不同的多個缺陷結果,或者乙個動作將產生乙個結果,而這
個結果又產生另乙個結果。為了易於閱讀,這些結果應該使用數字列表分隔開來。
如實際結果:
1.顯示「命令**行…錯誤」;
2.顯示「並且終止…服務」。
5.5 注釋/ 截圖
可以包含以下各方面的內容:
擷取缺陷特徵影象檔案;
測試過程所使用的測試檔案;
測試附加的印表機驅動程式;
再次描述重點,避免開發人員將缺陷退回給測試人員補充更多資訊;
再次指明該缺陷是否在前一版本已經存在;
多個平台之間是否具有不同表現;
注釋包含缺陷的隔離資訊,指出缺陷的具體影響範圍。
如,缺陷的注釋可能包含下面的內容:
能在 win2000 和 winxp 文字框中顯示文字內容,但不支援 win98
螢幕重新整理後,現象會消失。
使用二進位制檔案,不存在該錯誤。
參見附加的使用說明書和測試檔案。
測試開發之缺陷報告下篇
功能缺陷 介面缺陷 文件缺陷 缺陷 演算法錯誤 效能缺陷 a 類 致命缺陷,包括以下各種錯誤 由於程式所引起的宕機,非法退出 死迴圈 資料庫發生死鎖 因錯誤操作導致的程式中斷 功能錯誤 與資料庫連線錯誤 資料通訊錯誤 b 類 嚴重缺陷,包括以下各種錯誤 程式錯誤 程式介面錯誤 資料庫的表 業務規則 ...
軟體測試之缺陷報告
今天還是個下雨天,就像乙個魔咒,感覺這幾年的今天都是在下雨,但是今天的雨讓我感覺還是蠻舒適的,可能是因為昨天太熱了,也有可能是今天的忙碌讓我在這種空氣下感覺到一種放鬆 今天是執行測試用例的一天,那麼在這個過程中就避免不了會有bug出現,我們要怎樣有效的去記錄一條缺陷呢 一條缺陷記錄基本包括 bug編...
測試開發之測試基礎
一 測試的定義 通過人工或自動的手段,對被測物件進行檢測的活動。目的在於發現被測物件是否實現使用者的需求,或者弄清楚實際結果和預期結果之間的差異。二 測試的目的 三 測試的七大原則 四 測試的物件 測試物件包括軟體源 與軟體源 匹配的文件和支撐軟體源 執行的配置資料。測試物件 按照時間可分為 五 測...