用fiddler工具做介面測試
介面測試的原理我理解很簡單,是你傳送資料,看返回資料是否正確,返回值型別是否正常,主要點是多種資料的,返回結果正常
和其他應用程式相同,java中需要知道你的引數,欄位有哪些,我們就去給他造資料,而先公司是給的一個請求引數和地址,開始之前先說下介面的一些規範:
1.前端請求介面
介面方法:MethodName(string session, int appType, string args, DateTime timestamp, string sign)
呼叫介面方法的地址為:http://api.m.hzins.com/MethodName
呼叫介面方法應該POST的資料格式:session=xxx&appType=1&args={json}×tamp=now&sign=xxx
請求引數說明:
MethodName:需要呼叫的方法名
session:使用者session
appType : 呼叫的app型別
args:方法呼叫所需要引數(如果是多個引數,將引數寫成json物件進行序列化)
timestamp:為了讓簽名更加安全增加一個時間因素
sign:簽名 根據約定規則對引數進行加密後的字串
2. 後端介面返回資料規範:
{"State":7508, "Msg":"請求成功", "Data":"Data String"}
返回引數說明:
State: 返回狀態碼
Msg:返回資訊
Data:返回處理資料(Json字串)
在沒有工具幫助的情況下, 需要測試介面測試後臺是c#編寫的,可以藉助兩種方式進行介面的測試
一:URL直接請求
Request
請求引數:
ProductId:產品id,
PlanId:公司Id
返回資料:
{
"State":0,
"Msg":"操作成功",
"Data":{
"MaxPeople":100, //最大投保人數 (目前沒什麼用)
"HaveDestinationCountry":0, //是指定旅行目的地(目前木有用到)
"ProductAttributeAll":[ //投保屬性資訊
{
"Childs":[ //欄位可以選擇的項
{
"BindEntity":"",
"ControlTypeId":5,
"DefaultSelected":false,
"DisplayOrder":1,
"FieldName":"",
"Id":4,
"InitClass":"",
"IsRequired":true,
"IsSelected":false,
"Name":"身份證",
"ParentId":3,
"SettingTypeId":10,
"Value":"1"
},
{
"BindEntity":"",
"ControlTypeId":5,
"DefaultSelected":false,
"DisplayOrder":2,
"FieldName":"",
"Id":5,
"InitClass":"",
"IsRequired":true,
"IsSelected":false,
"Name":"護照",
"ParentId":3,
"SettingTypeId":10,
"Value":"2"
},
1.URL直接請求 gest請求
http://api.m.hzins.com/Product/GetProuductDetailInfo?args={"ProductId":"123","PlanId":"456"},在url後面直接新增引數,這個請求要後臺允許這樣的方法,成功後返回以上資料
2.利用fiddler傳送請求 post請求
有關其他fiddler的一些小技巧,覺得這個貼還不錯:http://blog.chinaunix.net/uid-27105712-id-3738821.html