讓我們看一個普遍存在的關于線程同步的問題。假設一個多線程的應用程序需要同步地訪問某個數據結構。被指派測試這個產品的QC工程師發現在某種情景下,應用程序盡管沒有Crash,但是會停止響應。正常的QC過程是,這個bug被記錄在bug跟蹤系統中,并描述了測試情景和停止響應的實際結果。然而,如果這個QA工程師熟悉源代碼,就可以進行bug產生原因的初步分析。例如,這個QC工程師可能斷定這個bug產生的原因是之前的線程沒有釋放mutex,從而造成了沖突。這些分析可以記錄在bug的詳細說明中,作為bug分析的一個基礎。
(2) Bug修訂和進一步分析