軟件測試中的BUG
1、術(shù)語(yǔ)解釋
測試程序:提供給測試組測試的程序;
測試計劃:對測試程序(構件、應用程序、系統等)及其目標進(jìn)行簡(jiǎn)要說(shuō)明;
錯誤跟蹤系統:是某個(gè)程序或應用系統,使得項目組可以報告、管理以及分析錯誤報告和錯誤趨勢,如RationalClearQuest就是一個(gè)錯誤跟蹤系統。
2、為什么要提交bug
在得到一個(gè)詳盡的測試程序后,剩下的工作就是執行測試計劃了。但是由于任何由人編寫(xiě)的程序都不可避免的存在著(zhù)不符合測試需求的錯誤,也就是bug。因此需要一個(gè)方法來(lái)跟蹤、分析和展示那些測試活動(dòng),避免偏離最小。這種方法稱(chēng)之為錯誤跟蹤系統。它主要是有效的管理缺陷,實(shí)現以下作用:
1)減少由于缺陷報告不明確而被開(kāi)發(fā)組駁回的情況;
2)加快缺陷的處理速度;
3)提高測試的可信度;
4)加強測試組與開(kāi)發(fā)組在整個(gè)項目過(guò)程中的團隊合作
3、如何才能提交好的測試bug
在有些組織里,程序員幾乎會(huì )把一半的測試bug返回給測試組,因為那些錯誤不可再現、沒(méi)有發(fā)現錯誤、同設計要求一致,或者錯誤報告根本無(wú)法操作。如果錯誤報告有如此高的返回率,基本可以認為是過(guò)程崩潰,需要立即解決:因為編寫(xiě)這些報告浪費了時(shí)間;會(huì )影響程序員和測試人員之間的團隊凝聚力;最糟糕的是失去改進(jìn)產(chǎn)品質(zhì)量的機會(huì )。
有些錯誤總是不可再現的或提出質(zhì)疑的。有些錯誤只是間斷地在模糊的或極端的條件下表現出來(lái)。有時(shí)候,測試環(huán)境和程序員之間的不一致會(huì )導致“在我的系統上工作良好”的反應。在需求不清楚的項目中,在一定的測試條件下,對“正確”行為的觀(guān)點(diǎn)可以存在合理的不同。有時(shí)候,當真正的問(wèn)題在于糟糕的測試過(guò)程、測試數據或不正確的測試用例時(shí),測試人員可能錯誤解釋測試測試結果和報告錯誤。
為了防止這類(lèi)問(wèn)題,要提交好的測試bug,作為一個(gè)好的測試人員,必須遵循以下八個(gè)步驟:
1) 結構:無(wú)論你是做探索性的或是描述性的、手工的或自動(dòng)的測試,都要認真仔細的測試;
2)再現:盡量三次再現故障。如果問(wèn)題是間斷的,那么最好報告問(wèn)題發(fā)生的概率;例如,每3次出現一次,每3次出現2次等;
3) 推廣:確定系統其他部分是否可能出現這種錯誤,以及使用不同的數據是否可能出現這種問(wèn)題,特別是那些存在嚴重影響的問(wèn)題。
4)總結:簡(jiǎn)要描述客戶(hù)或用戶(hù)的質(zhì)量體驗和觀(guān)察到的一些特征。
5)壓縮:精簡(jiǎn)任何不必要的信息,特別是冗余的測試步驟。
6)去除歧義:使用清晰的語(yǔ)言,尤其要避免使用那些有多個(gè)不同或相反含義的詞匯。
7)中立:公正地表達自己的意思,對錯誤及其特征的事實(shí)進(jìn)行描述,避免夸張或忽略的語(yǔ)句,引起過(guò)度的注意力或忽視。
8)評審:至少有一個(gè)同行,最好是一個(gè)有經(jīng)驗的測試工程師或測試經(jīng)理,在你提交測試報告或測試評估報告之前先自己讀一遍。
好的測試bug描述是告訴讀者測試人員發(fā)現了什么,而不是測試人員做了什么。因此只需要根據上述八個(gè)步驟寫(xiě)下最少的必需重現步驟。
4、如何提交bug
一個(gè)好的錯誤跟蹤系統包括了錯誤的必要信息,如果做得不好,會(huì )造成迷惑,并誤導讀者。好的故障描述應該包括十個(gè)基本部分:標題、項目、所屬模塊、優(yōu)先級、重要性、異常等級、可重復性、現象、操作過(guò)程和附件。
、贅祟}
使用一兩句話(huà)來(lái)描述錯誤,告訴經(jīng)理、開(kāi)發(fā)人員以及其他讀者為什么應該關(guān)心該問(wèn)題。好的標題應該著(zhù)重于出現的bug現象。但是過(guò)于簡(jiǎn)潔易引起誤導,使得原本重要的問(wèn)題被忽視。因此必須應該采用簡(jiǎn)潔、切中要害的概要,這樣才能引起讀者的重視。不重要的就描述比較輕微,例如:“聯(lián)系人的email沒(méi)有檢查合法性”;重要的就要體現比較嚴重,例如:“填了運營(yíng)商仍然提示運營(yíng)商不能為空,使得無(wú)法進(jìn)行下一步的操作”,會(huì )更容易讓開(kāi)發(fā)人員理解究竟是什么問(wèn)題及其重要性,并及時(shí)處理。
、陧椖
是指該錯誤屬于哪一個(gè)項目,歸哪個(gè)項目組解決,使不同的項目組看到和及時(shí)定位自己項目的錯誤。
、鬯鶎倌K
是指準確說(shuō)明發(fā)異常等級生錯誤的模塊,切忌發(fā)生錯誤指派模塊,導致后續流程錯誤;
、軆(yōu)先級
分為以下4級:1級:“馬上解決”,表示問(wèn)題必須馬上解決,否則系統根本無(wú)法達到預定的需求;2級:“高度重視”,表示有時(shí)間就要馬上解決,否則系統偏離需求較大或預定功能不能正常實(shí)現;3級:“正常處理”,即進(jìn)入個(gè)人計劃解決,表示問(wèn)題不影響需求的實(shí)現,但是影響其他使用方面,比如頁(yè)面調用出錯,調用了錯誤的數據庫等;4級:“低優(yōu)先級”,即問(wèn)題在系統發(fā)布以前必須確認解決或確認可以不予解決。
、葜匾
分為以下5級:1級:“非常嚴重”,表示缺陷不修改整個(gè)系統流程不能繼續;2級:“比較嚴重”,表示缺陷不修改不影響系統其他流程,但是本模塊流程不能繼續;3級:“一般”,表示缺陷不影響流程;4級:“輕微”,表示缺陷可以延期解決;5級:“優(yōu)化”,表示修改以后流程會(huì )更好。
文章來(lái)源于領(lǐng)測軟件測試網(wǎng) http://kjueaiud.com/