爲什麼hyperpacer錄製完後無法聯網

這個問題本身很簡單,也很好解決,但是問的人多了,簡單的問題也就不再簡單了。

在解答這個問題之前,我們首先要先普及一些常識性的知識。

爲什麼性能測試工具能夠錄下腳本來?

無論是loadrunner還是jmeter、hyperpacer,錄製腳本的原理都是通過代理將客戶端的請求截獲,然後由代理server發送給後臺,而後臺的響應也是先發給代理server,最後再由代理server返回給客戶端。

loadrunner比較隱晦,它應該是通過wplus_init_wsock.exe來截獲socket,然後再根據選擇的不同協議,通過api_協議_filter.dll來組織成我們看到的腳本。

而jmeter則屬於是簡單暴力型,顯式的在瀏覽器添加代理地址,然後自身作爲一個代理server截獲請求和響應。

hyperpacer跟jmeter的原理一樣,但是應該是爲了增加易用性,它直接通過修改註冊表的方式來實現,好處是確實易用性增加了,尤其是從loadrunner遷移過來的性能測試從業者用起來容易上手,但同時缺點就是:一旦工具出現異常,就沒辦法把註冊表再改回去。這時候也就出現了很多人在win8、win10這類兼容性還不太好的系統上使用hyperpacer的時候,工具異常退出,然後就無法聯網了。

所以,解決的辦法也很簡單,就是把瀏覽器的代理設置去掉就可以了。

PS:

如果不知道IE的代理設置在哪裏,可以把下面一段代碼複製到文本文件中,保存爲proxy_close.bat文件,然後雙擊執行一下就可以了。

@echo off
taskkill /im iexplore.exe /f
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 0 /f
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /d "" /f
echo IE代理取消完成
pause>nul



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章