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