軟體測試中我們的本質工作就是找出軟體中bug,交給對應的開發人員。以下是筆者對測試定位bug的一些方法總結
一 web前段
1 web前段通常就是我們說的網頁
2 web網頁可能出現的問題有以下幾種:網頁設計、互動設計、網頁文字、網頁的功能作用、
3 web網頁中bug定位思路:網頁現象-----》猜想原因--------》驗證方法-----》定位結論----》現象
二 測試bug定位原因分類
1 相容性(瀏覽器相關)
1.1:不同瀏覽器的支援標準不一樣,所以顯示的效果有時也不一樣。比如ie:trident;firefox:gecko;chrome:webkit;safari:webkit。
1.2: 瀏覽器的設定 例如禁用js、禁用彈出框、一些
2 網路相關
2.1 :是否發出了正確的請求---------請求的url、引數
2.2:請求是否得到回應-------例如http的返回值 比如返回的狀態碼是否為200(200代表請求成功)還有其餘的狀態碼如301、302、404、504
2.3:網速問題分為:1自身電腦記憶體過多,導致網頁卡頓,2 本身網速問題 3 就是網頁設計的互動問題(筆者認為原因一部分為介面方面的問題,其次是網頁設計互動的問題)
3效能問題
4 bug定位的常用工具
4.1:抓包工具定位前後端 fidder
4.2: 慢速網路模擬工具 firefox throttle
4.3:ie外掛程式httpwatch
5 web後端
後端包含執行在伺服器上的程式,就是各種邏輯的處理關係
後端可能發現的問題:邏輯的,資料的,策略的,介面的,效能的等
試bug定位原因歸類:
資料流相關
上下游模組是否連線正常——模組的ip和埠的配置,白名單黑名單配置,session授權
模組的資料傳送接收是否正常——日誌是否有滾動,是否顯示傳送了資料或接收到資料,資料是否完整,跨機房,負載均衡演算法(從哪些機器獲取到的資料)
非socket的資料傳輸——共享記憶體(是否分配,key的配置等),cache(是否建立,髒資料等),資料庫(配置,連線,表,觸發器,儲存過程),檔案(大小,訪問許可權)
模組之間的介面——協議的一致性(mcpack1,mcpack2等),欄位的一致性(乙個按signed解析,乙個按unsigned解析),字段復用
後端測試bug定位
日誌檢視命令
檢視壓力——tail -f as.log | grep '^notice' | awk '' | uniq -c
排除日誌中的特定內容——grep -v 'pattern' as.log
只輸出感興趣的內容——grep -o 'proctime:toal:\d+' as.log;grep -o 'proctime:toal:\d+' as.log | grep -o '\d+ ';grep -o 'proctime:toal:\d+' as.log | grep -o '\d+ ' | sort -n | uniq -c
將wf日誌歸類——grep -o '\w+\.(cpp|h):\d+' as.log.wf | sort | uniq -c
Web測試中定位bug方法
在web測試過程中,經常會遇到頁面中內容或資料顯示錯誤,甚至不顯示,第一反應就是bug,沒錯,確實是bug。進一步了解這個bug的問題出在那裡,是測試人員需要掌握的,可以簡單的使用瀏覽器自帶開發者工具 資料庫工具配合去排查。1.開發者工具的使用 1 開啟開發者工具,在瀏覽器選單欄選擇工具 開發者工具...
軟體測試之bug分析定位技巧
1 web前端 瀏覽器相關 網路相關 字元編碼相關 url錯誤 url路徑中漢字編碼使用的是utf 8編碼,引數中使用系統預設編碼,flash指令碼中使用的都是uft 8編碼。安全相關 效能相關 頁面抖動 非同步請求的數量過多 載入失敗 限速情況下,超時 bug定位常用工具 2 web後端 處理邏輯...
軟體測試中Bug的分類(型別)
是指bug對軟體質量的破壞程度,即此bug的存在將對軟體的功能和效能產生什麼樣的影響。崩潰 blocker 系統無法正常執行。阻礙開發或測試工作的問題 造成系統崩潰 宕機 死迴圈 導致資料庫資料丟失,與資料庫連線錯誤,主要功能喪失,基本模組缺失等問題。如 錯誤 死迴圈 資料庫發生死鎖 重要的一級選單...