大家好,我是譚叔,。 在日常工作中,,測試軟件在弱網(wǎng)、超時,、異常等場景下的運行狀況,,是保證系統(tǒng)穩(wěn)定性的重要環(huán)節(jié)。 比如:
今天,譚叔跟大家分享我在測試電腦軟件(程序)時,,模擬弱網(wǎng),、超時環(huán)境,抓包電腦軟件進行異常測試的方法,。 方法一:修改hosts將本機hosts修改為一個無效的ip地址,,以模擬超時。比如,,將網(wǎng)關設置一個無效ip,,構造訪問網(wǎng)關不通的場景。 優(yōu)點:操作簡單 缺點:僅能驗證無法請求某服務的場景,,無法驗證某服務不可用的場景 方法二:停服顧名思義,,將測試環(huán)境的后端服務停掉。 優(yōu)點:可以模擬真實的超時場景 缺點:會造成服務不可用,,影響其他測試 or 開發(fā)的工作 方法三:路由器限速使用wifi路由器,,在路由器后臺設置網(wǎng)速。 優(yōu)點:限制wifi速度,,操作簡單 缺點: 1,、無網(wǎng)卡的臺式機無法使用 2、路由器限速最低0.01Mbps/s,,即1.25kb/s,,無法達到Byte級別,當請求體很小時,,仍舊無法模擬超時 方法三:使用NetLimiter4NetLimiter4是一款簡單實用,、方便易用的網(wǎng)絡流量監(jiān)控軟件,可以限制程序的上下行網(wǎng)速。
優(yōu)點: 1,、多版本可用(winXP,、win7、win10),,操作簡單,、使用方便 2、可以限制電腦軟件的上傳和下載速度,,且能達到Byte/s級別 缺點: 網(wǎng)速限制全局有效,,當該軟件有其他ip地址+端口的請求時,雖然沒有勾選,,但會將該請求同時限制,,無法模擬單個接口的超時場景。 方法五(推薦):Proxifier + FiddlerProxifer是一個socks5客戶端,,可以讓不支持通過代理服務器工作的程序通過HTTPS或SOCKS代理,。
Fiddler是一款代理抓包軟件(測試人應該都知道)。 01 實現(xiàn)原理一般的電腦軟件不能設置代理,,因此只用Fiddler檢測不到數(shù)據(jù),,需要配合Proxifier使用。Proxifier負責把所有的請求發(fā)給Fiddler,,再在Fiddler上分析客戶端請求,,并利用Fiddler一些強大的功能,如打斷點,,篡改請求或者響應內容等來模擬我們需要的測試場景,。 02 配置代理如圖,配置Proxifier的代理服務器和代理規(guī)則
使用方法配置好Proxifier后,,啟動Fiddler,,則可使用Fiddler,對電腦軟件(程序)進行抓包,,測試各種異常流程,。
①打斷點調試,,模擬超時請求前斷點(before response): 響應后斷點(after requests): 比如:命令行輸入 即,程序請求 比如:命令行輸入 即,請求可以達到服務端,拿到響應,,但我們可以使用Fiddler篡改響應,,將錯誤的超時響應返回給程序,以觀察程序對該異常的處理情況,。
②模擬弱網(wǎng)如果要限制網(wǎng)速來模擬弱網(wǎng),,可以不打斷點,,通過修改fiddler配置的方式實現(xiàn)。 搜索 根據(jù)需求自行修改:上傳1KB需要300ms,,轉化一下:1Kb/0.3s = 10/3=3.3(KB/s) 修改后,,點擊保存,并勾選 注意事項
一如既往,,做個總結方案是死的,,人是活的,工作時多動腦筋,,多想想解決之道,,在合適的場景用合適的工具,才能高效率的達成你的測試目的,。 |