2022软件测试技能 Postman 接口测试工具 从入门到精通

系列文章目录

提示:阅读文章前,请先阅读目录


文章目录

  • 系列文章目录
  • 前言
  • 一、安装
  • 二、 功能介绍
  • 三、Get 和 Post 请求
    • get 请求
    • post请求
  • 三、 界面介绍
    • Params
    • Authorization
    • Header
    • Body
    • Pre-request Script
    • Tests
    • Cookies
    • Test Result
  • 四、环境变量和全局变量
    • 环境变量
    • 全局变量
  • 五、Collections 集合
    • 创建集合
    • 添加请求
    • Runner 自动化测试
    • Runner 参数化测试
  • 更新日志


前言

Postman是目前主流的接口测试工具之一,其简单易用,使用集合,多人协作,创建环境,创建测试,自动化测试,调试以及持续集成。

在日常工作中,拿它来调试接口,是非常的方便的,也可以直接做接口自动化测试,因为提供了断言的功能,可以在获取返回数据,然后进行断言。


一、安装

官网下载地址:https://www.postman.com/downloads

下载完直接安装即可,不需要什么配置

不过,打开之后,需要登录一个postman账号,这个时候,没有的话,注册一个即可

二、 功能介绍

下图是Postman的工作区间,各个模块功能的介绍如下:

1、New,在这里创建新的请求、集合或环境;还可以创建更高级的文档、Mock Server 和 Monitor以及API。
2、Import,这用于导入集合或环境。有一些选项,例如从文件,文件夹导入,链接或粘贴原始文本。
3、Runner,可以通过Collection Runner执行自动化测试。后续介绍。
4、Open New,打开一个新的标签,Postman窗口或Runner窗口。
5、My Workspace - 可以单独或以团队的形式创建新的工作区。
6、Invite - 通过邀请团队成员在工作空间上进行协同工作。
7、History - 所有请求的历史记录,这样可以很容易地跟踪你所做的操作。
8、Collections - 通过创建集合来组织你的测试套件。每个集合可能有子文件夹和多个请求。请求或文件夹也可以被复制。
9、Request tab - 这将显示您正在处理的请求的标题。默认对于没有标题的请求会显示“Untitled Request”。
10、HTTP Request - 单击它将显示不同请求的下拉列表,例如 GET, POST, COPY, DELETE, etc. 在测试中,最常用的请求是GET和POST。
11、Request URL - 也称为端点,显示API的URL。.
12、Save - 如果对请求进行了更改,必须单击save,这样新更改才不会丢失或覆盖。
13、Params - 在这里将编写请求所需的参数,比如Key - Value。
14、Authorization - 为了访问api,需要适当的授权。它可以是Username、Password、Token等形式。
15、Headers - 请求头信息
16、Body - 请求体信息,一般在POST中才会使用到
17、Pre-request Script - 请求之前 先执行脚本,使用设置环境的预请求脚本来确保在正确的环境中运行测试。
18、Tests - 这些脚本是在请求期间执行的。进行测试非常重要,因为它设置检查点来验证响应状态是否正常、检索的数据是否符合预期以及其他测试。
19、Settings - 最新版本的有设置,一般用不到。

三、Get 和 Post 请求

get 请求

测试网址:
https://jsonplaceholder.typicode.com/users

2022软件测试技能 Postman 接口测试工具 从入门到精通_第1张图片

post请求

测试网址:
https://jsonplaceholder.typicode.com/users

2022软件测试技能 Postman 接口测试工具 从入门到精通_第2张图片

三、 界面介绍

Params

2022软件测试技能 Postman 接口测试工具 从入门到精通_第3张图片

params参数,会在请求时带上的参数,会直接加在url后面,并以 & 连接不同参数

key 是键名,value 是键值,description 是描述(只备注作用,不会带到请求参数)

在这里的 Bulk Edit ,进入编辑模式,对于大量的参数的话,可以用以下方式导入

2022软件测试技能 Postman 接口测试工具 从入门到精通_第4张图片

2022软件测试技能 Postman 接口测试工具 从入门到精通_第5张图片

需要用冒号隔开,一行一个参数

Authorization

这是鉴权方式

2022软件测试技能 Postman 接口测试工具 从入门到精通_第6张图片

我们最常用的就是 bearer 鉴权 然后填入token,发送请求之后,便会自动在请求头加上

2022软件测试技能 Postman 接口测试工具 从入门到精通_第7张图片
即会自动完成鉴权

当然,还有更多鉴权方式

2022软件测试技能 Postman 接口测试工具 从入门到精通_第8张图片

Header

header 请求头

2022软件测试技能 Postman 接口测试工具 从入门到精通_第9张图片

Body

在 Body 里面,有多种参数模式

在这里插入图片描述
none:无参数
form-data:表单格式,可以传入字典(键值对)或文件
x-www-form-urlencoded:只能传入字典,即键值对
raw:可以传入json,xml,html,javascript
binary:把文件转化为二进制,并传参

Pre-request Script

前置脚本处理器

2022软件测试技能 Postman 接口测试工具 从入门到精通_第10张图片

我们可以在请求之后,使用postman的脚本,进行处理

Tests

后置脚本处理器,我们可以在请求之后,进行断言,脚本操作等

2022软件测试技能 Postman 接口测试工具 从入门到精通_第11张图片

Cookies

cookie 管理

2022软件测试技能 Postman 接口测试工具 从入门到精通_第12张图片

2022软件测试技能 Postman 接口测试工具 从入门到精通_第13张图片

Test Result

我们在Tests编写的脚本,都会在下方的,TestResult 展示

2022软件测试技能 Postman 接口测试工具 从入门到精通_第14张图片

四、环境变量和全局变量

环境变量

比如,
我们在进行A项目时,需要用到username和password
这时,我们需要切换到B项目,也是需要用到username和password
但是,两个username可能都不一样,那么,怎么样才能便捷的切换,不需要每次都去修改呢?
那就是需要用到我们的环境变量 Environment

2022软件测试技能 Postman 接口测试工具 从入门到精通_第15张图片
Add,新增环境变量

2022软件测试技能 Postman 接口测试工具 从入门到精通_第16张图片
2022软件测试技能 Postman 接口测试工具 从入门到精通_第17张图片

点击Cancel就会返回到环境变量主页
2022软件测试技能 Postman 接口测试工具 从入门到精通_第18张图片

这里只有选中环境变量只会,才会显示
2022软件测试技能 Postman 接口测试工具 从入门到精通_第19张图片

我们选中test_a,然后发起请求,再看请求的参数
2022软件测试技能 Postman 接口测试工具 从入门到精通_第20张图片

然后,我们在这里的参数,可以用{{变量名}} 来读取我们的环境变量

2022软件测试技能 Postman 接口测试工具 从入门到精通_第21张图片

发起请求,然后,我们通过 Fiddler 来查看发起请求的时候,有没有把参数值带上

2022软件测试技能 Postman 接口测试工具 从入门到精通_第22张图片

可以看到这里使用的是A环境变量时候的值

那我们切换到B

2022软件测试技能 Postman 接口测试工具 从入门到精通_第23张图片

可以看到,就替换成B环境时候的值

全局变量

与环境变量操作方法一样,我们添加username和password

我们会发现,参数值被加上了划线,并且处于灰色状态

说明如果跟环境变量的参数名一致,那么

就会优先使用环境变量

2022软件测试技能 Postman 接口测试工具 从入门到精通_第24张图片

我们可以添加一个email的全局变量看看效果

2022软件测试技能 Postman 接口测试工具 从入门到精通_第25张图片

五、Collections 集合

创建集合

集合可以方便管理我们的api

可以这么说,集合就是项目

我们习惯性,给不同项目创建不同集合,这样的话

每个集合就有对应的api,统一进行管理

2022软件测试技能 Postman 接口测试工具 从入门到精通_第26张图片

我们可以为集合单独设立一些参数

如:
鉴权,前置处理器,后置处理器,还有集合变量
2022软件测试技能 Postman 接口测试工具 从入门到精通_第27张图片

当然,我们习惯性的,会为一个大集合下面创建N个子集合

代表,项目下的功能模块

比如,login,reg,home等

2022软件测试技能 Postman 接口测试工具 从入门到精通_第28张图片

这样,我们就有一个清晰的项目结构,方便我们进行接口测试

2022软件测试技能 Postman 接口测试工具 从入门到精通_第29张图片

添加请求

2022软件测试技能 Postman 接口测试工具 从入门到精通_第30张图片

我们可以给集合添加请求

2022软件测试技能 Postman 接口测试工具 从入门到精通_第31张图片

2022软件测试技能 Postman 接口测试工具 从入门到精通_第32张图片

我们创建一个get和post的请求

2022软件测试技能 Postman 接口测试工具 从入门到精通_第33张图片

然后,我们在Tests编写脚本代码

编写断言功能,来判断请求的结果是否符合我们的要求

(下一步,我们将进行集合运行,即自动化测试)

post请求,我们设置为响应状态码是否为200
2022软件测试技能 Postman 接口测试工具 从入门到精通_第34张图片

get请求,我们设为响应时间是否超过200ms

2022软件测试技能 Postman 接口测试工具 从入门到精通_第35张图片
然后保存即可

2022软件测试技能 Postman 接口测试工具 从入门到精通_第36张图片

Runner 自动化测试

2022软件测试技能 Postman 接口测试工具 从入门到精通_第37张图片

在自动化测试中,需要先创建集合,所以,请按照上面的步骤,创建好集合,并添加好api接口

2022软件测试技能 Postman 接口测试工具 从入门到精通_第38张图片
这里,我们选中好,我们需要测试的集合

2022软件测试技能 Postman 接口测试工具 从入门到精通_第39张图片

然后就是子集合

2022软件测试技能 Postman 接口测试工具 从入门到精通_第40张图片

可以勾选需要自动化测试的api

2022软件测试技能 Postman 接口测试工具 从入门到精通_第41张图片

然后,点击最下方的 Run test_project

2022软件测试技能 Postman 接口测试工具 从入门到精通_第42张图片

这里就会出现运行结果

这里都断言不通过

这样,我们就轻松的完成了接口自动化测试,,去验证我们的请求结果

我们重试一下看看

2022软件测试技能 Postman 接口测试工具 从入门到精通_第43张图片

get请求符合了200ms的响应时间

post的话,返回的状态码是201,其实也符合请求成功的情况,不过,我们是要判断是不是返回了200的状态码,如果项目需求就是需要返回200的状态码,那么,这个接口就是有bug

我们还可以尝试,循环运行10次看看

2022软件测试技能 Postman 接口测试工具 从入门到精通_第44张图片

2022软件测试技能 Postman 接口测试工具 从入门到精通_第45张图片

我们就可以看到一个综合结果

2022软件测试技能 Postman 接口测试工具 从入门到精通_第46张图片

对于,我们需要筛选通过与不通过的请求

2022软件测试技能 Postman 接口测试工具 从入门到精通_第47张图片

点击左侧这里,就可以方便的查看啦

Runner 参数化测试

对于循环测试api的话

我们的需求,需要每次请求的数据,不一样

那么,就可以用到数据参数化

我们先新建一个csv格式的文件

2022软件测试技能 Postman 接口测试工具 从入门到精通_第48张图片

注意:默认文件的编码不是UTF-8,这个时候,如果包含中文,在导入数据的时候,postman只会获取成乱码,这个需要注意一下

我们用notepad++,来把文件编码改为utf-8,,如果你有其他文本编辑器,可以修改编码也是可以的

2022软件测试技能 Postman 接口测试工具 从入门到精通_第49张图片

文件的首行,是列名

这里请使用英文变量名,后面,在请求参数中,才可以用{{}}来获取

2022软件测试技能 Postman 接口测试工具 从入门到精通_第50张图片

我们在get请求中,在params中,使用这两个变量

2022软件测试技能 Postman 接口测试工具 从入门到精通_第51张图片

在这里,我们可以看到,循环次数,自动帮我们修改为数据数

然后,这个会自动识别数据格式,如果自动识别的不准确,可以手动修改
2022软件测试技能 Postman 接口测试工具 从入门到精通_第52张图片

然后,我们预览一下数据

注意看看有没有乱码情况,以及数据丢失的情况

2022软件测试技能 Postman 接口测试工具 从入门到精通_第53张图片

然后,我们运行看看

2022软件测试技能 Postman 接口测试工具 从入门到精通_第54张图片

通过 Fiddler 来查看请求有无带上参数

2022软件测试技能 Postman 接口测试工具 从入门到精通_第55张图片

2022软件测试技能 Postman 接口测试工具 从入门到精通_第56张图片

可以,已经自动帮我们填上我们提供的数据

这就是参数化测试


更新日志

提示:将会持续优化更新

20220712,安装,功能介绍,Get 和 Post 请求-get请求,post请求,界面介绍-Params,Authorization,Header,Body,Pre-request Script,Tests,TestResult,Cookies,环境变量和全局变量-环境变量,全局变量,Collections 集合-创建集合,添加请求,Runner 自动化测试,Runner 参数化测试

你可能感兴趣的:(postman,测试工具)