更新時間:2018-12-13 來源:黑馬程序員 瀏覽量:
對于我們測試的人員來說,bug的生命周期一般分為:發(fā)現(xiàn)bug—>提交bug—>驗(yàn)證bug,那在Bug這三個階段中如何體現(xiàn)測試的專業(yè)度呢?
一、發(fā)現(xiàn)Bug
場景:
“測試不就是發(fā)現(xiàn)bug嗎,有什么技術(shù)含量?”
思考:
當(dāng)發(fā)現(xiàn)一個bug,除了盡快報告問題以外,我們還能做哪些事情?
回答:
測試人員發(fā)現(xiàn)bug,花些時間細(xì)細(xì)品味
1. 這個bug復(fù)現(xiàn)的必要條件是什么?
2. 除了發(fā)現(xiàn)bug的這條路徑,是否還有更多的路徑也會導(dǎo)致相同的問題?
3. bug是否存在可能影響其它數(shù)據(jù)或者其它應(yīng)用的副作用?
4. 其它功能模塊是否也存在類似問題?
5. bug的復(fù)現(xiàn)路徑是否在用戶可達(dá)之路上?
6. 復(fù)現(xiàn)bug的路徑是否在測試用例中?有沒有可借鑒性?
通過以上分析,我們可能獲得以下額外收獲:
1. 通過bug的定位,確認(rèn)必現(xiàn)路徑、可能的原因,幫助開發(fā)快速定位、解決問題
2. 通過bug的路徑、影響范圍等分析,發(fā)掘更多的隱藏bug,《探索式測試》-惡鄰測試法:重災(zāi)區(qū)往往會有更多的bug
3. 通過分析操作路徑,補(bǔ)充測試用例,擴(kuò)展測試用例范圍、思路
第二階段:提交bug
場景:
一個陽光明媚的下午,小白正在測試一個用例的時候,突然app異常退出了,再重復(fù)進(jìn)行以上步驟,問題沒有復(fù)現(xiàn)。他意識到這是個bug,于是他趕緊提交給開發(fā)。沒過一會,開發(fā)大神怒氣沖沖的過來說“你這bug也沒必現(xiàn)步驟,也沒日志,這怎么修改!”。小白心里一陣嘀咕“本來就是一個bug,你應(yīng)該想辦法解決呀,我怎么知道”
思考:如何才能提交一個有效的bug?
回答:
1. 確保bug有效。
1)不要因?yàn)榄h(huán)境問題或者是操作錯誤引起“bug”
2)不要提交一些重復(fù)的bug
2. 寫好bug描述。
1)bug描述精確、沒有歧義,詳細(xì)簡潔的測試步驟。
2)保證各個字段內(nèi)容與實(shí)際現(xiàn)象一致。比如:版本、復(fù)現(xiàn)率等
3)對于復(fù)現(xiàn)率低的問題,盡可能提供一些可參考信息:截圖、視頻、日志、可能的步驟、可能原因等(如果你能通過各種手段定位到問題的原因,開發(fā)大神也會對你刮目相看的)
4)對于特殊的測試場景,附帶相關(guān)的數(shù)據(jù),比如1024kb的圖片等
第三階段:驗(yàn)證bug
場景:
當(dāng)我還是一個測試新手的時候,對于bug驗(yàn)證,往往是按照步驟驗(yàn)證復(fù)現(xiàn),如果沒有問題就關(guān)閉了(不知道現(xiàn)在還有多少人跟我當(dāng)初一樣~)
思考:如何做好bug的回歸驗(yàn)證?
回答:
1. 確認(rèn)好bug的復(fù)現(xiàn)前提及操作步驟。
2. 確認(rèn)bug產(chǎn)生的原因及修復(fù)方法。
1) 明確bug產(chǎn)生的原因,觸類旁通,分析其他模塊可能存在的問題
2 ) 通過bug產(chǎn)生的原因,積累測試經(jīng)驗(yàn),擴(kuò)展測試思路
3) 通過bug的修改方法,分析修改是否能修復(fù)問題?是否回引發(fā)其他問題?
4) 積累bug經(jīng)驗(yàn),在后續(xù)相關(guān)問題發(fā)現(xiàn)時,快速定位問題,提供解決思路
3. 確認(rèn)bug的回歸范圍及用例。
在了解清楚bug產(chǎn)生的原因及修復(fù)方法基礎(chǔ)上,再根據(jù)業(yè)務(wù)關(guān)聯(lián)、功能模塊關(guān)聯(lián)確認(rèn)回歸范圍,確保bug修復(fù)全面且沒有引起新的bug
最后
一個對于我們來說很小的BUG,多多思考也是能發(fā)掘隱藏在背后的問題、測試工具、測試知識,從而提高自己的測試能力、專業(yè)度。
作者:黑馬程序員軟件測試培訓(xùn)學(xué)院
首發(fā):http://test.itheima.com/