難復現問題對於不同的人,分別應該怎麼做?
前言:經常會有一些難重現的問題,這個時候,開發就會讓測試來複現,但是有一小部分bug是復現難度高,且比較嚴重的。主要原因為以下幾點:
1. 測試環境複雜
2. 比較隨機(同條件有時候就不會出現問題)
3. 步驟複雜,不清楚哪一步出現的問題
出現這些難復現的bug的時候,不要苦惱,從幾個角度分析一下出現難復現問題後,不同的人應該怎麼辦。
一. 測試人員
1. 記錄測試環境(軟體類和網頁版,具體問題具體分析):
硬體(手機型號或電腦型號),系統(電腦系統或手機系統),DPI和解析度(電腦),瀏覽器及其版本號,host,版本,前置條件,難復現問題出現的具體時間等(可能有日誌檔案)
2. 記錄操作步驟:清楚描述具體步驟,測試輸入,按照操作順序進行記錄,可進行截圖的進行截圖說明(說明:在發現任一電腦端的bug,我都會使用輕鬆錄屏進行錄屏)
3. 記錄預期結果,實際結果,復現頻率
4.如果仍然難復現,向開發反饋,讓開發幫忙試著復現,如果最後仍未復現,向產品經理報告,並在測試報告內寫入可能導致的風險項
5. 對於嚴重的bug,在早會的時候,計入待跟蹤項
PS:若是網頁端,儘量開啟F12或者fiddler,再次出現問題後,可讓開發看下F12的內容;若是電腦APP,記錄好在測試的同時打開了什麼軟體,什麼環境,開機時間多久,連續使用軟體時間,是否經歷過休眠等;手機APP除了上述幾個,還包括是否切換過程序,返回桌面,是第幾次安裝這個軟體。
二. 開發人員
1.確保提交的程式碼無潛在風險,即無error或warning
2.根據測試步驟跑一遍,考慮程式碼是否存在邏輯判斷不嚴謹的地方
3. 考慮相容性,不同軟體之間的相容性,瀏覽器之間的相容性
4.如果無log檔案,可考慮加入log檔案(對於部分bug適用)
5.人工走查,Code review可能出錯的程式碼
6.如果仍未復現,與測試一起和產品經理或專案經理,以及管理人員報告bug可能導致的風險,進行資訊同步
三. 管理人員
1. 對於一些難復現的問題,測試提出之後,開發在沒有進行以上步驟不可直接置為resolve.否則必須reopen,不允許假解決。
2. 對於開發人員,不要對bug的多少進行績效考核,避免作假的情況出現
3. 培養開發質量意識,注重DoD(提測規範,如引入自動化掃描程式碼工具sonar,PC-lint,提測之前進行code review)
四. 產品經理或專案經理
1. 跟蹤嚴重且難復現的bug,瞭解風險,和業務方,或客服等說明可存在的問題
2. 根據bug的嚴重等級,考慮是否重做該模組的程式碼