結(jié)果:崩潰
馬虎的(有很大空間讓人產(chǎn)生誤解的):
使數(shù)據(jù)庫(kù)服務(wù)器脫機(jī),保存,然后退出,崩潰了。
太多冗余的信息(不能夠指出什么是引發(fā)錯(cuò)誤的關(guān)鍵原因)
1.運(yùn)行客戶端
2.為輸入新的條目查詢數(shù)據(jù)庫(kù)
3.打開(kāi)一個(gè)瀏覽器
4.在yahoo.com上瀏覽新聞
5.關(guān)閉瀏覽器
6.選擇一個(gè)條目
7.把種類從“蔬菜” 更改到“水果”
8.使數(shù)據(jù)庫(kù)服務(wù)器脫機(jī)
9.嘗試保存記錄
10.收到一個(gè)超時(shí)的錯(cuò)誤
11.退出客戶端
結(jié)果:崩潰
在這個(gè)例子中,測(cè)試人員記錄在發(fā)現(xiàn)錯(cuò)誤之前他所作的一切,但是他沒(méi)有檢查是不是每個(gè)步驟都是必要的,例如從yahoo.com閱讀新聞。
如果你只寫(xiě)下那些產(chǎn)生錯(cuò)誤必不可少的步驟,開(kāi)發(fā)人員將很少告訴你他們不能夠重現(xiàn)錯(cuò)誤,同樣錯(cuò)誤什么委員會(huì)也會(huì)很少?zèng)Q定“沒(méi)有人將會(huì)做到那個(gè)程度!”
但是如果每個(gè)步驟都是必須的,怎么辦呢?如果錯(cuò)誤只在你執(zhí)行了一些看上去沒(méi)有關(guān)系的步驟后出現(xiàn)了,那么在bug report中記錄下這些步驟。你可以在那些看上去沒(méi)有邏輯關(guān)系的步驟后寫(xiě)上“必須的步驟”,或者你可以在bug report的開(kāi)始部分加上注釋:“注意-這里的每一個(gè)步驟都是重現(xiàn)錯(cuò)誤的必要步驟。
編寫(xiě)清晰的步驟同樣可以在驗(yàn)證修復(fù)過(guò)程中提供幫助,特別是在另一個(gè)測(cè)試人員做驗(yàn)證的時(shí)候。
解釋錯(cuò)誤的影響,不只是癥狀
一些bug report是令人誤解的。從錯(cuò)誤的表層看是無(wú)傷大雅的,但是如果在你檢查錯(cuò)誤的牽連時(shí),你發(fā)現(xiàn)它是一個(gè)非常嚴(yán)重的問(wèn)題。如果你在錯(cuò)誤審核委員會(huì),你會(huì)擁護(hù)先修改哪一個(gè)錯(cuò)誤呢?
1.關(guān)于“一個(gè)令人討厭的對(duì)話框阻止關(guān)閉應(yīng)用程序”的報(bào)告
2.關(guān)于“在退出時(shí)應(yīng)用程序中止了” 的報(bào)告