難以重現的Bug怎麼處理

2021-09-26 18:46:42 字數 1400 閱讀 3738

在開發過程中,不管是開發人員還是測試人員最不願意碰到就是偶現的bug。如果復現吧需要花費大量時間和精力,而且還不一定能成功復現,不復現吧到線上出了問題誰都受不了。

為什麼不能重現bug?

1.環境的變更造成了bug難以重現,被測物自身發生了某些變更。環境的變更一般是由於多人共用環境造成的,也有少量情況下是系統內部或者時間觸發的變更(這類bug非常難重現)。

2.沒有找到真正引發bug的操作和步驟。這些操作往往是一些不怎麼顯而易見的操作,測試人員在不經意間完成,而又忽略了這一操作,以致難於重現bug。

3.bug須要使用特殊資料才會出現

應對的方式

科學分析:對於黑盒測試人員來說,科學分析意味著你需要有一定的分析策略。我們需要採取一些形式化的方法來完成我們的分析。

嚴密推理:天馬行空對測試人員很重要,但是當你試圖重現乙個bug的時候,這並不是乙個非常好的方法。抓住了蛛絲馬跡,你就要推理是為什麼產生了這種蛛絲馬跡。限於工作性質,測試人員更多的會從:業務完整性、資料完整性、業務正確性、資料正確性等方面考慮問題。但是,如果測試人員對被測物的it架構有比較深入了解的話,推理的範圍會擴大到技術實現層面,如:多執行緒可能引發的問題,網路引發的問題,excepiton處理不當引發的問題,全域性事務設計不當引發的問題,記憶體洩漏引發的問題,資料庫表設計不合規引發的問題等等等等,這些會讓你的分析推理能力如虎添翼。當然,如果限於條件,測試人員不具備這類能力,則應該在適當的時候請求開發人員協助。

有序求證:這裡只有一點需要注意。那就是,在求證的過程中不要打散彈槍,按照你的推理一步一步的來,乙個個推理的來驗證,一次只引入一處修改。這樣才能讓你的捕蟲網編制的足夠細密。

大膽假設:有的時候,看似八竿子打不著的東西竟然存在著千絲萬縷的聯絡,而你獲取資訊的過程總是乙個由少及多的過程,一開始這些聯絡是無法被識別出來的。天馬行空這時候從一定程度上又變得有用起來,當然天馬行空也不是無厘頭,還得靠我們所謂的「靈光一閃」,這號稱是潛意識在幫助你。

堅持不懈:話不多說,有的時候你差的就是那麼一點兒點兒耐心。

團隊協作:很多情況下,重現bug不是乙個人能搞定的。我們需要各種不同的視角開拓思路、加深對被測試物的認識。

一點兒運氣:說實在的,有的時候重現bug就是靠運氣,你不得不承認這一點。事實上很多美好的事情發生都得依靠運氣。

主要的方法

獲取手機上的log檔案、檢視當時資料庫裡的帳號狀態

實時的資料監控和分析。記錄場景、行為等資料,能有效縮小問題的範圍。

有幾個入口,通過其他路徑是否可以進入這個頁面或者操作

弱網情況下操作

難以復現的BUG怎麼處理?????

1 首先出現難以復現的bug一定要截圖提交bug 2 首先評估bug的重要程度以及對整個專案的影響,如果影響小,就記錄下來,繼續跟蹤 3 如果對專案影響較大,範圍較廣,則要及時解決。免費領取python自動化學習資料 工具,面試寶典面試技巧,加qq群,785128166,群內還會大佬技術交流 盡量復...

Bug的處理流程

軟體沒有實現產品的說明書所描述的功能 軟體實現了產品說明書描述不應有的功能 軟體執行了產品說明書沒講的操作 軟體沒有實現產品說明書沒講但應該實現的功能 從軟體測試員的角度來看,軟體難以理解 不易使用 執行緩慢,或者終端使用者認為不對 致命 一招斃命的缺陷,使你的系統無法執行,有造成資料洩漏的安全性問...

Bug的處理流程

軟體沒有實現產品的說明書所描述的功能 軟體實現了產品說明書描述不應有的功能 軟體執行了產品說明書沒講的操作 軟體沒有實現產品說明書沒講但應該實現的功能 從軟體測試員的角度來看,軟體難以理解 不易使用 執行緩慢,或者終端使用者認為不對 致命 一招斃命的缺陷,使你的系統無法執行,有造成資料洩漏的安全性問...