Postman接口测试实战从入门到精通

文章目录

  • 什么是接口测试
  • 为什么做接口测试
  • 如何做接口测试
  • 接口测试流程
    • 获取接口信息
    • 接口测试用例设计
    • 接口发包
    • 返回信息验证
  • 实战一:百度IP接口测试实战
  • 实战二:需要设置头域的请求实战
  • 实战三:POST请求实战
  • 断言与变量
  • 测试沙箱实战
    • Pre-request Script:在请求发送前执行的操作
    • Test:在请求发送后执行的操作
      • 1.状态码测试Status code:Code is 200
      • 2.包含字符串测试Response body:Contains string
      • 3.Json键值对测试 (JSON value check)
      • 4.校验头域中是否包含某一个属性(Content-Type header check )
      • 5.检验响应时间是否小于一个值(Response time is less than 200ms)
      • 6.验证返回的状态码的值是不是某几个中的一个(Status code :Successful Post request)
  • 测试管理-测试集与数据驱动
    • 测试集
    • 数据驱动
      • 步骤:
  • 进阶实战-cookie篇

什么是接口测试

接口测试就是针对软件对外提供服务的接口的输入输出进行测试,以及接口间相互逻辑的测试,验证接口功能与接口描述文档的一致性。

为什么做接口测试

接口测试通常能够对系统测试得更为彻底,更好地保障产品质量,同时越早地发现更底层的问题,修改和维护的代价也越小。

如何做接口测试

根据接口文档设计用例,调用接口,验证结果。

接口测试流程

获取接口信息

通过接口文档和抓包来获取接口的几本调用方式和返回数据。
【通过选中和删除参数,来判断哪些参数是必填的,哪些参数是选填的。】

接口测试用例设计

根据获取到的接口信息,按照接口测试用例设计方法,设计参数和预期返回结果

接口发包

使用工具或者编程向接口传递参数。

返回信息验证

获取接口返回的结果,进行解析和验证。
Postman接口测试实战从入门到精通_第1张图片
Postman接口测试实战从入门到精通_第2张图片
Postman接口测试实战从入门到精通_第3张图片
Postman接口测试实战从入门到精通_第4张图片

实战一:百度IP接口测试实战

百度ip查询接口从抓包到测试
在这里插入图片描述
在这里插入图片描述
抓包之后一共有四个返回数据。其中1,2,4为gif图,3位js脚本,我们应该关注的就是3.
Postman接口测试实战从入门到精通_第5张图片
步骤:
1.复制一下Request URL,下面在Postman中测试一下这个接口:
Postman接口测试实战从入门到精通_第6张图片
我们复制进去后,会自动根据&符号分隔,找出url中的参数及参数值。

2.点击send按钮,执行接口测试,得到一下返回数据:
Postman接口测试实战从入门到精通_第7张图片
在这里插入图片描述
总结:ip接口测试实战中的Header中的referer可以添加,也可以不添加,没有影响我们需要的结果。

实战二:需要设置头域的请求实战

在这里插入图片描述
1.当我们对接口进行访问,而不设置头域时,会发现这时候返回的信息不是我们想要的:
Postman接口测试实战从入门到精通_第8张图片

2.这时,我们加上Header中的referer,就能拿到我们想要的数据了:
注意:究竟要加Header中的哪一个属性,是由接口文档来决定的,针对本例来说,是referer,referer一般用来指明此次请求的来源,这种确定来源呢也是一种防止爬虫的策略。本例就是,只有腾讯课堂下的来源,才能发送此请求

Postman接口测试实战从入门到精通_第9张图片

实战三:POST请求实战

Postman接口测试实战从入门到精通_第10张图片
即POST相比于GET,我们需要在Body中输入传入的数据:

Postman接口测试实战从入门到精通_第11张图片
如果Body中传入的数据格式为x-www-form-urlencoded,那么,我们可以省事一点,直接在URL后面按照get传参一样,拼接在后面,如图size=2;
Postman接口测试实战从入门到精通_第12张图片

断言与变量

举例天气预报接口测试(全局变量):
在这里插入图片描述
变量命名方式:{{variable}}
变量的声明:

Postman接口测试实战从入门到精通_第13张图片
Postman接口测试实战从入门到精通_第14张图片
点击Globals,设置全局变量,店里Add,设置局部变量。

举例百度IP地址查询(环境变量):
Postman接口测试实战从入门到精通_第15张图片
环境变量如何引用?
在右上角选择要使用的一组环境变量。
Postman接口测试实战从入门到精通_第16张图片

注意:当全局变量和引入环境中的局部变量同名时,优先选用环境变量。

测试沙箱实战

Postman接口测试实战从入门到精通_第17张图片

Pre-request Script:在请求发送前执行的操作

Postman接口测试实战从入门到精通_第18张图片
Postman接口测试实战从入门到精通_第19张图片

Test:在请求发送后执行的操作

可以在右侧的导航栏中选择系统定义好的常用的操作
Postman接口测试实战从入门到精通_第20张图片

1.状态码测试Status code:Code is 200

Postman接口测试实战从入门到精通_第21张图片
Postman接口测试实战从入门到精通_第22张图片

2.包含字符串测试Response body:Contains string

注意:在测试主体返回的字符串中是否包含某一个字符时,Body视图不要用Pretty这种美化过的,而是用raw类型的。因为有可能pretty中的是已经解码过的数据。
Postman接口测试实战从入门到精通_第23张图片

3.Json键值对测试 (JSON value check)

我们测试Json下的result下的city,每一级之间通过“.”运算符链接:
Postman接口测试实战从入门到精通_第24张图片

4.校验头域中是否包含某一个属性(Content-Type header check )

【之所以方法叫这个名字,是因为,一般返回的头域中是包含属性Content-Type的】
Postman接口测试实战从入门到精通_第25张图片

5.检验响应时间是否小于一个值(Response time is less than 200ms)

在这里插入图片描述

6.验证返回的状态码的值是不是某几个中的一个(Status code :Successful Post request)

Postman接口测试实战从入门到精通_第26张图片

测试管理-测试集与数据驱动

测试集

步骤:
1.
Postman接口测试实战从入门到精通_第27张图片
2.
Postman接口测试实战从入门到精通_第28张图片
3.
Postman接口测试实战从入门到精通_第29张图片

数据驱动

Postman接口测试实战从入门到精通_第30张图片
Postman接口测试实战从入门到精通_第31张图片

步骤:

1.我们首先将要测试的数据写在excel表格中。
Postman接口测试实战从入门到精通_第32张图片
2.然后另存为csv格式。因为,要使用数据驱动的话,需要用csv或者json格式的数据。
在这里插入图片描述
3.进入Postman进行操作。
(1)点击Runner
Postman接口测试实战从入门到精通_第33张图片
(2)选择数据
Postman接口测试实战从入门到精通_第34张图片

(3)点击Preview进行预览。
Postman接口测试实战从入门到精通_第35张图片
我们发现,有乱码。为什么呢?因为Postman中的编码格式是UTF-8,而我们文件的格式是GBK,那我们就要进行格式的转换。
将DDdata.csv使用记事本打开。点击 文件->另存为->utf-8

Postman接口测试实战从入门到精通_第36张图片
重新选择文件并预览:
Postman接口测试实战从入门到精通_第37张图片
我们可以看到,excel表中的第一行对应于变量名。
而下面的每一行记录,其实对应的就是每次迭代时对应变量的值。
在这里插入图片描述
我们看到,当我们引入文件后,这个Iterations就自动显示了3,因为我们的数据中就只有三行。这也提醒我们,在用记事本打开时,不要不小心在后面加入一个换行符,要不然会迭代一次空的。

(4)Run之后的结果
Postman接口测试实战从入门到精通_第38张图片

进阶实战-cookie篇

Postman接口测试实战从入门到精通_第39张图片
下面,我们登录一下testingedu.com.cn:8000
点击登录按钮时,打开f12抓包,选择XHR(xml http request)格式。

下面是抓包结果:
Postman接口测试实战从入门到精通_第40张图片
cookie使用的两种方式:
1.我们已经拿到了cookie,在Header中添加。Postman接口测试实战从入门到精通_第41张图片
Postman接口测试实战从入门到精通_第42张图片
2.先执行登录操作,postman会自动给我们存下来cookie,之后执行购物车查询。
Postman接口测试实战从入门到精通_第43张图片

你可能感兴趣的:(Postman接口测试实战从入门到精通)