上一個版本發佈後,有一些同窗反饋,舊版的協議模板( 表單模式)使用 ,在測試restfull 接口(json格式)的時候,仍是有一些懵,不知道怎麼下手,感受沒有其餘工具直接複製一個純文件JSON來得直接跟方便。面試
因此在LuckyFrame V2.7版本中,新增長了一個純文本模式構建請求的功能,你能夠直接 複製 JSON字符串到純文本請求文本域中了,見下圖:json
那麼問題來了,若是在用例步驟中,我想替換純文本中某個key的value,要怎麼替換呢,好比上圖中的json串格式化後是如下這樣的:restful
{ "ContractRoot": { "SvcCont": { "staffCode": "-1", "channelNbr": "-1", "traceId": "", "commonRegionId": "地區ID--須要參數化", "certPhoneNumRel": [ { "phoneNum": "手機號碼--須要參數化", "certAddress": "湖北省京山縣新市鎮沿河南路321號附3號43戶", "gPartyId": "", "certNum": "身份證號碼1--須要參數化", "certType": "1", "custName": "張三", "actionType": "12", "serviceType": "1800", "lanId": "8420100" }, { "phoneNum": "手機號碼--須要參數化", "certAddress": "湖北省京山縣新市鎮沿河南路66號附12號1098戶", "gPartyId": "", "certNum": "身份證號碼2--須要參數化", "certType": "1", "custName": "李四", "actionType": "12", "serviceType": "1800", "lanId": "8420100" } ] }, "TcpCont": { "TransactionID": "6002020001201707100000668354", "ReqTime": "20170710105338", "Method": "order.party.modCertPhoneNumRel", "Sign": "e3dfbb6619f04409a9845c09e664fae2", "Version": "V1.0", "AppKey": "6002020001" } } }
例子: 我想把上面JSON字符串中的commonRegionId、第一個phoneNum(張三的)、第二個 certNum (李四的)三個key中的默認值替換掉。工具
首先要明確的是,這裏有三個參數須要替換。而在接口測試中參數替換的通用語法爲:性能
參數1#替換參數值|參數2#替換參數值|參數3#替換參數值測試
因此, 在整個json串中,若是沒有重複的key ,那麼你能夠直接這樣寫:spa
commonRegionId#860000| phoneNum #137777777| certNum#8777662 3d
很明顯這種寫法只能應對整個JSON中沒有重複key的狀況rest
若是是針對上面的JSON串,在 phoneNum、 phoneNum都存在重複的狀況下,咱們應該怎麼寫呢?接口
重點來了:若是key存在重複,那麼你能夠寫成key[ index ] index指的是key在整個字符串中的序號,表示你 要替換同名key中的第幾個, 若是你有key後面沒有帶[ index ],會默認替換這個key的第一個。
寫法一:會替換 commonRegionId、第一個phoneNum(張三的)、第一個 certNum (張三的)
commonRegionId#860000| phoneNum #137777777| certNum#8777662
寫法 二:會替換commonRegionId、第一個phoneNum(張三的)、第二個certNum(李四的)
commonRegionId#860000| phoneNum #137777777| certNum[2]#8777662
寫法 三:會替換commonRegionId、第一個phoneNum(張三的)、第二個certNum(李四的)
commonRegionId#860000| phoneNum[1] #137777777| certNum[2]#8777662
以上三種寫法,寫法二和寫法三都能知足例子中的需求。
使用起來是否是很簡單呢,若是你看明白了,就手動點個贊留個言吧!
若是對軟件測試、接口測試、自動化測試、性能測試、LR腳本開發、面試經驗交流。感興趣能夠175317069,羣內會有不按期的發放免費的資料連接~