您好,登錄后才能下訂單哦!
如何使用FiddlerScript,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
沒有用過Fiddler的人應該對FiddlerScript沒啥感觸,我是真心覺得FiddlerScript對測試有一定的幫助哈。
在web前端開發過程中,Fiddler是最常用的一款調試工具,那對于測試來說,對測試來說也是一大利器。在大多數情況下,通過Fiddler的菜單就可以滿足我們基本的使用,但是涉及比較復雜的場景,通過fiddler基本菜單無法滿足。這時候就可以利用FiddlerScript,
1通過斷點可以修改http請求和相應的數據,不過不可以更改http頭部,url,http相應碼等等,所以這時候FiddlerScript就可以派上用場了。
2因為設置斷點更改http請求數據,手動查找參數,輸入,點擊重新啟動按鈕,這一系列的動作就耗費一定的時間,有時候前段判斷響應的時間比較短,還沒來得及修改完,響應時間超時,那么更改無效,所以這時候FiddlerScript實現自動修改就爬上用場了。
下面介紹貼上我常用的FiddlerScript ,OnBeforeRequest部分
//更改http頭文件,兩種方式都可以
if (oSession.uriContains("172.16.0.62")) {
oSession.oRequest.headers["lat"]="22.547";
//oSession.oRequest["lon"] = "114.125";
}
//移除某個頭文件
if (oSession.uriContains("objectId=1")) {
oSession.oRequest.headers.Remove["lat"];
}
//增加頭文件
if (oSession.uriContains("172.16.0.61")) {
oSession.oRequest.headers.Add("lat","22.548")
}
//host 是要寫完整
if (oSession.host == "hstoa.wisdom-gps.com:8888") {
}
if (oSession.uriContains("172.16.0.61")) {
oSession["ui-color"] = "winered";
}
//修改get請求url
if (oSession.uriContains("C_Account/LogOn")){
var geturl = oSession.url
geturl=geturl.Replace("111111","222222");
oSession.url = geturl;
}
//修改post請求的boby
var strBody=oSession.GetRequestBodyAsString();
// 用正則表達式或者replace方法去修改string
strBody=strBody.replace("1111","2222");
// 彈個對話框檢查下修改后的body
FiddlerObject.alert(strBody);
// 將修改后的body,重新寫回Request中
oSession.utilSetRequestBody(strBody);
//將請求URI中http協議替換成https協議
oSession.fullUrl = "https" + oSession.fullUrl.Substring(oSession.fullUrl.IndexOf(':'));
常用的OnBeforeResponse部分:
//增加響應頭
if (oSession.uriContains("C_Account/LogOn")) {
oSession.oResponse.headers.Add("test1","11111")
}
//修改響應頭
if (oSession.uriContains("C_Account/LogOn")) {
oSession.oResponse.headers["Date"] = "Wed, 27 Oct 2016 03:11:15 GMT";
}
//移除響應頭
if (oSession.uriContains("C_Account/LogOn")) {
oSession.oResponse.headers.Remove["Date"] ;
}
//修改http狀態碼
if (oSession.uriContains("C_Account/LogOn")) {
oSession.responseCode = "404"
}
//修改響應boby,如修改Result值1更改為2
if (oSession.uriContains("C_Account/LogOn")) {
var bobystr = oSession.GetResponseBodyAsString();
bobystr = bobystr.Replace("\"Result\":1","\"Result\":2");
oSession.utilSetResponseBody(bobystr);
}
//響應狀態標識顏色
if (oSession.uriContains("C_Account/LogOn")) {
var reponseboby = oSession.GetResponseBodyAsString()
if (reponseboby.Contains("\"Result\":0")) {
oSession["ui-color"] = "blue";
}
}
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。