Postman

本文详细介绍了接口测试的核心概念,包括接口返回数据的JSON、HTML和XML格式解析,以及Webservice、RESTful和Dubbo等接口协议。还探讨了接口测试的流程、用例设计、测试工具如Postman的使用,以及动态参数、环境变量和接口关联的实现。此外,文中还提到了接口测试中常见的反例测试和断言方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 来自哔哩哔哩视频的随手笔记:

一、接口测试灵魂拷问

二、接口返回数据和Json详解

1.json格式:三组数据(80%)

{error_code:0,msg:"提现成功",data:[]}

  • error_code:错误代码
  • 0:代表成功 
  • msg:对错误码的中文说明 
  • data:真正的返回的数据
  1. json就是一种数据类型,整形,小数,字符串
  2. JSON由两组数据组成
  • MAP对象:键值对{key:value,key:value}
  • 数组:[value1,value2,value3]

"people":[ 

{

"firstName": "Brett",            

"lastName":"McLaughlin"        

},      

{        

"firstName":"Jason",

"lastName":"Hunter"

}

]

}

格式化校验网址: www.bejson.com 

2.html格式

<html>

        <title> </title>

        <body>

                <error_code>0</error_code>

                ....

        </body>

</html>

3.xml格式

<?xml?version="1.0"  encoding="utf-8">

<error_code>0</error_code>

...

</xml> 

三、接口测试协议

 1.webservice协议:接口协议:http://........?wsdl

http://192.168.12.1:8080/addUser

soap协议:wsdl

restful规则:

  • get:获取数据
  • post:提交数据
  • put:修改数据
  • delete:删除数据

 http://192.168.12.1:8080/User

 2.dubbo协议:接口协议以dubbo://....

适用于少量数据的传输。大并发。

3.http协议:接口地址:http://     (占市场80%)

https=http+ssl安全传输协议  端口:443

http:端口80

什么是http协议?

超文本传输协议,主要用于浏览器和服务器之间交互数据,交互有两个部分:

请求:get,post,put,delete

响应:1xx信息,2xx成功,3xx重定向(跳转不传值),4xx客户端错误,5xx服务器错误。

请求部分包含:

响应部分包含:

四、企业接口测试的流程和方案

1.拿到api接口文档,熟悉接口的业务,接口地址,鉴权,入参,出参,错误码

2.接口计划和方案

思路:

正例:输入正常的入参,查看接口是否返回成功

反例:

     鉴权反例:鉴权码为空,鉴权码错误,鉴权码已过期

     参数反例:参数为空,参数类型异常,参数长度异常

              错误码的覆盖

其他场景:分页异常。

3.编写用例和评审

4.执行接口测试

5.输出接口测试报告

五、接口测试工具以及postman

接口测试工具:postman、 jmeter 、 soupui(webservice协议的测试) 、  apipost、  fiddler(抓包工具)、  charles(抓包工具)

请求部分的页签:

响应部分的页签:

 示例:

 六、postman内置的动态参数

企业当中做接口测试的时候经常会出现接口不能把参数写死。

  • 时间戳:{{$timestamp}}
  • 生成0-1000的随机整数:{{$randomInt}}
  • 生成一个GUID的字符串:{{$guid}} 很长的一个字符串

七:Postman环境变量和全局变量

开发环境,测试环境,预发布环境、线上环境

不管是环境变量也好,还是Global也好都是全局变量。

{{ip}}指端口号

八、接口关联

 Tests断言:

JSON提取器

//提取access_token的值

var jsValue=JSON.parse(responseBody)

console.log(jsValue.access_token)

//把提取的值保存到全局变量

pm.globals.set("access_token",jsValue.access_token);

Tests里添加下一段:正则表达式提取器

//使用正则表达式提取match:匹配 new RegExp新建规则

var flag_id=responseBody.match(new RegExp('"id":(.+?),'))[1]

console.log(flag_id)

pm.globals.set("flag_id",flag_id);

 

 

Cookie提取器

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值