接到开发接口的任务,写完后不知对错,就想到找一个接口测试工具测一测。接口测试工具有很多,比如Swagger、SoapUI、Jmeter、Postman等,本文着重讲述Postman的安装与使用。
1.Postman的安装
Postman的官方下载地址为https://www.getpostman.com/apps,在这里,你可以根据自己的需求直接下载相应的exe文件,达到一键安装的效果。
2.Postman测试WebService接口
(1)设置url
一般就是访问项目中的asmx文件。
(2)设置请求模式:post
(3)设置Header
为防止出现中文乱码,数据编码格式为UTF-8。所以添加Content-Type,值为text/xml;charset=utf-8。
(4)设置Body
勾选raw, 因为WebService通过HTTP协议发送请求和接收结果时,发送的请求内容和结果内容都采用XML格式封装,并增加了一些特定的HTTP消息头,以说明 HTTP消息的内容格式,这些特定的HTTP消息头和XML内容格式就是SOAP协议。这边需要指定传输数据的类型,选择XML(text/xml)格式。
接口定义的请求格式复制到Body中,并且填上必要的参数,例子如下:
<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/">
<soap:Body>
<UniteBudgetManage xmlns="http://tempuri.org/">
<budgetManageCriteria>
<AccountCode>123456</AccountCode>
<BudgetDeptCode>SMCV-MAN10</BudgetDeptCode>
<Year>2018</Year>
<BlockAmount>8989</BlockAmount>
</budgetManageCriteria>
</UniteBudgetManage>
</soap:Body>
</soap:Envelope>
其中UnitBudgetManage是方法名,budgetManageCriteria为该方法中的参数,它是一个对象,包含BudgetType、CheckorBlock等属性。
一切设置完成后,点击 send 按钮就可以了。
3.Postman测试WCF接口
(1)设置url
一般访问的是对应的svc文件,加上相应的方法名。
其中UnitBudgetManage是对应的UrlTemplate。
(2)设置请求模式:post
(3)设置Header:添加Content-Type,值为text/xml;charset=utf-8
(4)设置Body
勾选raw,以JSON(application/json)格式进行传输。Body中输入需要传输的JSON格式的数据。例子如下,
{
"Service": {
"Data": {
"Request": {
"BudgetType": "Account",
"CheckorBlock": "Check",
"BmEntity": [
{
"AccountCode": "123",
"BlockAmount": "1900",
"BudgetDeptCode": "SMCV-MAN",
"Year": "2018"
},
{
"AccountCode": "456",
"BlockAmount": "4500",
"BudgetDeptCode": "SMCV-GR",
"Year": "2018"
}
]
}
}
}
}
一切设置完毕后,点击 Send 按钮,这样就会调用指定的接口,并执行内部的方法,根据返回结果来测试功能的正确与否。
(5)返回结果
返回结果依然是JSON格式。
{
"Service": {
"Data": {
"Request": {
"BmEntity": [
{
"AccountCode": "123",
"BlockAmount": "1900",
"BudgetDeptCode": "SMCV-MAN",
"Year": "2018"
},
{
"AccountCode": "456",
"BlockAmount": "4500",
"BudgetDeptCode": "SMCV-GR",
"Year": "2018"
}
],
"BudgetType": "Account",
"CheckorBlock": "Check"
},
"Response": {
"Code": "E0000000",
"Desc": "科目预算金额不足:123-2018-SMCV-MAN预算金额不足",
"Status": "FAIL"
}
}
}
}
}
来源:oschina
链接:https://my.oschina.net/u/4365362/blog/4294615