Postman接口测试基础和实战(1)

Postman 接口测试定义

  • 定义:接口测试是针对软件对外提供服务的接口的输入输出进行测试,以及接口间相互逻辑的测试,验证接口功能与接口描述文档的一致性。
  • 优点:通常对系统测试更为彻底,更好保障产品质量,同时越早越底层的发现问题,修改和维护的代价也越小。
  • 方法:根据接口文档设计用例,调用接口,验证结果。
  • get和post请求方法区别:(1)get请求接口的请求数据是放在URL里的;post请求接口的请求数据放在body里面的。(2)get请求可在浏览器中直接访问,而post请求只能借助工具完成put请求:从客户端向服务器传送的数据的数据取代指定文档的内容。
  • 接口测试文档平台:用友云。提供的新发债券直接查询接口进行测试。接口地址:https://yongyoucloud.com

目录

一. Postman安装与基本使用
二. Postman接口测试知识点
三. Get接口测试实战小例子
四. Post请求方法接口测试

一,Postman安装与基本使用

1.1 Postman下载

(1)Postman分为Postman native app和Postman Chrome app两个版本,目前Chrome app已停止维护,官方也不推荐使用该版本,因此建议大家直接选择native app进行下载。
(2)下载地址:https://www.getpostman.com/postman
根据自己操作系统选择对应版本。

1.2 Postman安装

下载完成后的exe文件直接上级运行,按提示逐步完成即可。

1.3 Postman各功能简介

new—>Crecte New:创建request请求、collection(测试集)、environment(环境变量)等操作。
new—>API Network:可以下载对应的案例进行实际的学习和操作 new—>API Network
history:对历史记录下载下来同步到本地。 colection:对之前创建好的测试集进行管理的菜单栏。 capture API
request with postman:进行抓包操作(很少使用)

二,Postman接口测试知识点

网上有很多开放接口可用,比如用友开放接口平台:https://api.yongyoucloud.cm
但需要注册得到appcode后才能进行测试。

2.1 接口测试流程

1,获取接口信息:通过接口文档和抓包来获取接口的基本调用方式和返回。
2,接口测试用例设计:根据获取到的接口信息,按照接口测试用例设计方法,设计参数和预期返回结果。
3,接口发包:使用工具或者编程向接口传递参数。
,4,返回信息验证:获取接口返回的结果,进行解析和验证。

2.2 Postman发起接口请求(四大信息:URL、请求方法、header(头域)、参数)

通过chrome浏览器中按下F12打开开发者工具,切换到network菜单,对浏览器中的动作进行抓包。
请求部分:接口测试中,接口请求信息中,重点需要关注4大信息:接口URL地址、请求方法、请求头域以及请求参数。

Postman接口测试基础和实战(1)_第1张图片

2.3 接口收发包

Postman接口测试基础和实战(1)_第2张图片

2.4 获取响应返回信息

  1. 状态码:如200表成功
  2. 响应头:F12—>Network—>Headers—>response headers的内容和Postman中Headers内容一致。
  3. 响应正文:F12进入开发者工具的Response里查看

三 Get接口测试实战小例子

Get接口测试特点:一般在Postman中不需要手动输入参数信息,因为将从F12开发者工具中获取到的URL输入Postman中时,会自动显示参数信息。

3.1 三个例子

eg1:百度ip接口测试

步骤如下图所示:

1,在浏览器输入:baidu.com进入百度页面并输入ip
2,在ip地址查询中随便输入ip地址
3, F12进入控制台,点击查询——Network,出现四个数据包Type,点击类型为script的数据包,可以看到接口URL
4,复制接口URL到Postman。打开postman—>New—>crect request—>request—>输入name"百度iP接口"->crect colection—>输入colection name—>save
5,将url粘贴到postman的get方法所对应URL位置,请求参数会以列表形式自动出现,因为URL中包含参数的键值对。
6,点击send,会输出信息
7,设置测试用例,将请求参数中的value值进行修改即可。根据等价类边界值等方法设置测试用例。

Postman接口测试基础和实战(1)_第3张图片
Postman接口测试基础和实战(1)_第4张图片

eg2:天气API

接口文档地址: htps://www.tianqiapi.com/?action=v1
从接口文档中可看到API地址:GET https://www.tianqiapi.com/api/

其中GET指请求方法,后面指url
在Postman中选择get方法,并输入url地址,查看接口文档中必填参数,例如必填参数version为v1,则只需在Postman的key,value分别输入version和v1,点击send按钮发送,接口向服务器发送请求,服务器返回对应的信息在下面。

eg3:获取人脸布控、图像布控任务对应版本号

如下图所示:
1,在Postman选择get方法,并输入从接口文档获取的API URL;
2,查看接口文档必填参数,在Postman的Paremeter填入Key和Value值(如ID名称和ID号)
3,点击send,会输出人脸/图像布控任务的对应的版本号
4,查看接口文档的“返回数据说明”,核对postman输出的版本号或其他内容是否与返回数据说明中的预期结果一致。

Postman接口测试基础和实战(1)_第5张图片
·

3.2 接口请求—头域(headers)重要性

3.1 中的3个小例子在发送请求时,只填了URL、请求方法以及参数,没有显示头域(headers)的作用。

1,打开某物品页面的评论区,F12进入开发者工具—Network—同时选中XHR(表示request的请求格式)、JS、WS等——找到评论的comment_list信息。
2,使用Preview查看comment_list信息更加清晰,显示的是所有的评论信息。
3,从F12中获取四大信息,第一是从Network—Headers—general中获取URL、请求方法、参数(输入URL时参数会自动出现在Key和value中)。
4,此时点击send,返回的结果期望是评论接口中带上所有评论信息,但实际没有返回该期望数据。
5,找头域。F12—Netwoek—Headers—Response
Headers——找到接口文档中所写的需要的头域(本例子中头域为referer,用来指定请求来源,防止爬虫)。
6,将F12中找到的头域信息填写到Postman中的Headers参数中,(本例是输入Key为referer,value为F12中找到的值)
7,点击send,会返回所期望的数据信息。

四,Post请求方法接口测试

4.1 登陆实战接口测试详细流程

进行网络抓包时,一般登陆功能会使用post请求,
1,获取请求四大信息。进入某网页的登陆页面,输入账号密码之前F12进入控制台抓包,Network— Headers中会看到请求四大信息:(1,-2)General下面的Request URL和Request Method:Post。(3)Request Header中的Content-Type:application/x-www-form-urlencoded,表示请求头里面的内容,使用的文本格式为application/x-www-form-urlencoded,会将参数信息以表单形式进行提交。(4)Query String aramenters是在URL中带上的信息,表示从首页登陆的操作log in .填写的用户名、密码和验证码显示在form-data中,form-data与application/x-www-form-urlencoded格式是相关的。
2,在Postman中如何进行参数传递?(1)创建一个接口,将URL和post分别输入Postman中,会自动生成一些参数。(2)选择body参数格式。需要在Body中填写Form-data的参数来作为请求体传递信息,Body下面有几种不同的参数传递格式,由于本例中的Content-Type**:application/x-www-form-urlencoded,已规定好格式,因此选择Body下的application/x-www-form-urlencoded格式,选择后Headers 里自动会出现Content-Type及对应的www-form-urlencoded格式,
3,将参数填写在Body中。从F12开发者工具中找到form-data中的username、passaword和验证码三个参数,分别填写在Body中。
4,点击send。返回数据是unicode编码,将返回的unicode编码使用转码工具可以看到中文的意思是登陆成功。
课外小知识:F12抓包过程中是看不到Response内容的,因为从登陆到跳转页面,返回信息在浏览器中被隐藏了,在fiddler等抓包工具中可看到。

4.2 Post接口测试请求体与Content-Type头域

之前案例中使用的get方法接口都是通过URL中添加请求参数的方式完成参数穿度。在对使用Post方法的接口进行测试时,需要特别注意请求参数在body中的格式以及请求头在Content-Type头域,该头域规定了接口接受的请求参数传递格式。
在postman请求体重传递参数时,在body菜单中设置请求体的格式。

4.3 Body下面的四种不同参数传递格式如下:

  • x-www-form-urlencoded:对应于Content-Type头域为x-www-form-urlencoded的类型,是以键值对形式发送表单参数,同时参数会携带在url中。
  • form-data:对应于Content-Type的multipart/form-data类型,既可以发送键值对也可以进行文件参数传递。
  • raw:选项中可以使用请求体原始格式编辑各Content-Type类型对应的参数格式,直接按请求体的格式来进行内容发送。
  • binary选项用于发送文件内容请求。

你可能感兴趣的:(Postman接口测试基础和实战(1))