bug定位即有足夠的“證據”去證明DOV(開發人員)的代碼存在問題,不是單憑自己認為是bug就是bug,最好可以定位到DOV的某行代碼,某個函數的問題,最好保留日志截圖並且可以保證重現。
定位順序:UI --> 中間件 --> 后台 -->代碼 -->database
一.web前端的bug分析定位。
- 測試內容:頁面布局、用戶功能、易用性、兼容性
- 測試方法:模擬用戶輸入,在瀏覽器頁面上進行輸入、點 擊等行為
- 定位之前需要思考的問題:是否是瀏覽器設置問題?是否是瀏覽器cache的問題? 在其他瀏覽器上是否可復現? 用其他數據是否可以復現? 是否是cookie相關的問題? 是否正確發出了請求? 是否得到了正確的應答? 是否是網絡原因? 是否是跨域問題? 是否是程序版本的問題?
- 常見bug:瀏覽器兼容性,瀏覽器按鈕操作,字符編碼,頁面跳轉,跨域,性能
二.后台的bug分析定位
- 測試內容:邏輯流、數據流、策略、接口、性能
- 測試方法:輸入條件構造,網絡通信包(驅動、樁、真實的上下游模塊),數據文件,配置文件(包括詞表,黑白名單等),共享內存,輸出檢查,網絡通信包,數據文件,日志(尤其是異常日志),監控:系統監控:cpu、句柄、IO、內存模塊級監控:內存結構體信息,調試DEBUG,JPDA打斷點
- 常見bug:自頂向下排查(從系統入口模塊開始),是內部邏輯問題還是下游數據問題?是否是某些配置下發生的問題?日志中是否發現線索?系統資源情況中是否發現線索?是否是邊界值、並發等問題?下游模塊是否交互正常?是否是多線程下的問題?是否是大壓力下的問題?是否是不同模塊間接口的定義不一致?是否和服務器軟件版本及設置有關?自底向上排查(從系統末端模塊開始),最底層的模塊是否正常收到了請求?是內部邏輯問題還是上游請求問題