15.5錯誤報告(Bug Report)
在測試中,如果發(fā)現問題,我們就得報告,在移山過程模型中,“bug”是第二個工作項類型。在這一階段,我們就主要用bug進行交流。
在以前的“二人合作”一章中,有些團隊成員已經互相找過bug,但是當時項目相對簡單,對bug 的格式并未做嚴格要求。在一定規(guī)模的軟件項目中,我們要求一個好的錯誤報告要能做到:
(1)bug的標題,要簡明地說明問題。
?。?)bug 的內容要寫在Description中,包括:
a. 測試的環(huán)境和準備工作;
b. 測試的步驟,清楚地列出每一步做了什么;
c. 實際發(fā)生的結果;
d. (根據spec和用戶的期望)應該發(fā)生的結果。
(3)如果需要其他補充材料,例如相關聯(lián)的bug、輸出文件、日志文件、調用堆棧的列表、截屏等,都要保存在bug 相應的附件或鏈接中。
?。?)還可以設置bug 的嚴重程度(Severity)、功能區(qū)域等,這些都可在不同的字段中記錄。
下面是九條創(chuàng)建的一個bug:
標題:掛了
內容:我今天在玩移山購物網的時候,發(fā)現移山網站掛了。
這個bug的問題在于對問題的描述不明確,讓開發(fā)人員無從下手。小飛拿到這個bug,也是哭笑不得,試了試移山的各個頁面,好像也都正常。他于是把這個bug又推給九條,“哪里掛了?”
過了一會兒,九條回復“在我的機器上是掛了”。
小飛跑到九條的座位上,想看看“犯罪現場”。
九條:我剛把機器重啟動……
兩人等到啟動完畢,打開網頁,發(fā)現一切正常。
九條:(納悶了)昨天晚上的確是掛了。網頁上還有一些錯誤信息。我當時正在干什么來著,好像是在留言或者在論壇上發(fā)帖子,我現在也想不清了。讓我再玩玩,等著碰到了再叫你。
阿亨:這樣九條浪費了兩個人各一個小時的時間。最后什么進展也沒有。一個好的bug 應該這樣:
標題:購物網站在上傳大于100K的文字的時候出錯
內容有以下幾點:
環(huán)境:在Windows XP下,使用IE7。允許Cookie。購物網的版本是1.2.40。
重現步驟:
?。?)用[用戶名,密碼] 登錄。這一用戶在系統(tǒng)中是一般用戶。
?。?)到某一產品頁面 (鏈接為:……)。
?。?)選中一個帖子, 例如:帖子號為579。
?。?)回復帖子,在內容中粘貼100K的文字內容(文本內容見附件)。
結果:
網站出錯,錯誤信息為:[略]
預期結果:
網站能完成操作,或者提示用戶文本內容過大。
[在附件中加入100KB的文本文件]。
如果是這樣的報告,那么開發(fā)人員就能夠很快地重現這一問題,從而分析和解決問題。
在測試中,如果發(fā)現問題,我們就得報告,在移山過程模型中,“bug”是第二個工作項類型。在這一階段,我們就主要用bug進行交流。
在以前的“二人合作”一章中,有些團隊成員已經互相找過bug,但是當時項目相對簡單,對bug 的格式并未做嚴格要求。在一定規(guī)模的軟件項目中,我們要求一個好的錯誤報告要能做到:
(1)bug的標題,要簡明地說明問題。
?。?)bug 的內容要寫在Description中,包括:
a. 測試的環(huán)境和準備工作;
b. 測試的步驟,清楚地列出每一步做了什么;
c. 實際發(fā)生的結果;
d. (根據spec和用戶的期望)應該發(fā)生的結果。
(3)如果需要其他補充材料,例如相關聯(lián)的bug、輸出文件、日志文件、調用堆棧的列表、截屏等,都要保存在bug 相應的附件或鏈接中。
?。?)還可以設置bug 的嚴重程度(Severity)、功能區(qū)域等,這些都可在不同的字段中記錄。
下面是九條創(chuàng)建的一個bug:
標題:掛了
內容:我今天在玩移山購物網的時候,發(fā)現移山網站掛了。
這個bug的問題在于對問題的描述不明確,讓開發(fā)人員無從下手。小飛拿到這個bug,也是哭笑不得,試了試移山的各個頁面,好像也都正常。他于是把這個bug又推給九條,“哪里掛了?”
過了一會兒,九條回復“在我的機器上是掛了”。
小飛跑到九條的座位上,想看看“犯罪現場”。
九條:我剛把機器重啟動……
兩人等到啟動完畢,打開網頁,發(fā)現一切正常。
九條:(納悶了)昨天晚上的確是掛了。網頁上還有一些錯誤信息。我當時正在干什么來著,好像是在留言或者在論壇上發(fā)帖子,我現在也想不清了。讓我再玩玩,等著碰到了再叫你。
阿亨:這樣九條浪費了兩個人各一個小時的時間。最后什么進展也沒有。一個好的bug 應該這樣:
標題:購物網站在上傳大于100K的文字的時候出錯
內容有以下幾點:
環(huán)境:在Windows XP下,使用IE7。允許Cookie。購物網的版本是1.2.40。
重現步驟:
?。?)用[用戶名,密碼] 登錄。這一用戶在系統(tǒng)中是一般用戶。
?。?)到某一產品頁面 (鏈接為:……)。
?。?)選中一個帖子, 例如:帖子號為579。
?。?)回復帖子,在內容中粘貼100K的文字內容(文本內容見附件)。
結果:
網站出錯,錯誤信息為:[略]
預期結果:
網站能完成操作,或者提示用戶文本內容過大。
[在附件中加入100KB的文本文件]。
如果是這樣的報告,那么開發(fā)人員就能夠很快地重現這一問題,從而分析和解決問題。