posts - 710,  comments - 81,  views - 260万
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

接到开发接口的任务,写完后不知对错,就想到找一个接口测试工具测一测。接口测试工具有很多,比如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中,并且填上必要的参数,例子如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
<?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格式的数据。例子如下,
 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
{
  "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格式。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
{
    "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"
            }
        }
       
        }
    }
}

  

posted on   itprobie-菜鸟程序员  阅读(2134)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现
历史上的今天:
2015-05-28 table 合并行和列
2014-05-28 Developing ADF PageTemplates
点击右上角即可分享
微信分享提示