Postman的使用教程笔记

目录

0 前言

1 全局变量和环境变量

1.1 设置全局变量和环境变量

1.2 使用全局变量和环境变量

1.3 注意数据类型问题

2 Header

3 Get和Post方法

3.1 Get方法

3.2 POST方法

4 集合Collections和请求Request(批量测试用例示例)

5 Tests

5.1 动态参数

5.2 测试脚本

6 Mock Servers

7 Cookies

8 Newman


0 前言

本文面向具有一定的计算机网络基础、了解Postman的基本使用的读者。

1 全局变量和环境变量

1.1 设置全局变量和环境变量

在Environments模板里可以设置全局变量和环境变量

1.2 使用全局变量和环境变量

特别注意:

1、JS里面使用全局变量和环境变量,通过调用方法来实现

  • pm.environment.get("variable_key");
  • pm.environment.set("variable_key", "variable_value");
  • pm.globals.get("variable_key");
  • pm.globals.set("variable_key", "variable_value");

2、其他:通过两对花括号{{variable_name}}语法使用,注意选择对应的环境

1.3 注意数据类型问题

会根据所设置的内容,原封不动的放入到使用的地方。 因此如果是字符串,不要忘记带引号!

若使用时候没有该变量值,则保留原来的内容,如若没有blog这个变量,使用{{blog}}时,则会传递一个为{{blog}}的值。

可在Console控制台里查看发送数据的请求头! 

示例一

示例二

 

 

2 Header

可以自行在Header模块中添加键值对,后者设置的值会覆盖前者

当使用POST方法时,Content-Type默认会根据Body里设置的相对应,例如选择JSON格式,则Content-Type会自动对应application/json

3 Get和Post方法

3.1 Get方法

在URL上后面接参数,多个参数之间用 符号

3.2 POST方法

POST方法里的Body的参数类型

1、none                无参数

2、form-data        键值对,还可以上传文件(注意所上传文件需要在外部工作空间里)

3、x-www-form-urlencoded        键值对

4、raw                原始数据,包括Text、JavaScript、JSON(常用)、HTML、XML

5、binary            二进制文件

6、GraphQL       不太常用

设置允许读取外部工作空间权限

raw参数类型包括Text、JavaScript、JSON(常用)、HTML、XML

4 集合Collections和请求Request(批量测试用例示例)

一个项目对应一个Collection,一个接口测试用例对应一个Request。

运行项目时,可以选择数据文件,作为接口测试用例的输入,步骤如下:

1、根据接口的输入参数和输出参数,编写接口测试用例。

例如注册用户接口,输入username和password参数,输出包括status状态值,编写如下mydata.csv文件内容

username,password,assert_value
chatu,123456,200
chatu,123456,400
,123456,400
chatu,,400

2、Body里使用 {{}} 读取到所上传文件里面的内容,JS里面以对象data的方式对待文件数据,其中data是对象名称(固定的),例如data.assert_value

注意:有无引号的情况,由于username和password字段值是接收字符串,所以本人加了引号,规范的写法应该是在创建mydata.csv中就该对username和password的用例设置字符串类型的数据

 

 

3、运行项目时,选择文件数据,上传后,点击Preview可查看所上传的接口测试用例

 

4、运行,可查看每个断言的情况

 

 

5 Tests

5.1 动态参数

参考文档:Dynamic variables | Postman Learning Center

注意参数用{{$timestamp}},JS里用pm.variables.replaceIn('{{$timestamp}}')

5.2 测试脚本

全局断言:点击项目里面的Tests模块

 

 

局部断言:点击Request里面的Tests模块,在正确、错误、异常的测试用例情况下,按照接口返回的数据,设置断言 

其余断言方法:

1、使用正则表达式,例如responseBody.match(new RegExp("'status':(.*?)"))

2、JSON提取器:JSON.parse(responseBody)

文档:Using variables | Postman Learning Center

Postman will store environment and global variables as strings. If you’re storing objects or arrays, remember to JSON.stringify() them before storing, and JSON.parse() them when you retrieve them.

6 Mock Servers

Mock Servers实现模拟接口,可以返回接口数据

1、创建Mock Servers

(1) 配置接口路径和响应数据 (2) Mock Servers的名称

 

2、创建成功

(1) 环境里会自动新增该Mock的环境

(2)Collections里会自动新增该Mock的Collection,可在对应的接口的Default设置返回值

(3) Mock的使用和普通的接口使用方法一样

 

 (4)url供其他项目使用,可复制Mock的url地址

7 Cookies

分类:

(1) 会话Cookies        浏览器关闭,就失效

(2) 持久Cookies        依据Coookies的有效期限

步骤:

(1) 客户端第一次访问服务端,服务端返回Cookies数据;

(2) 客户端收到Cookies数据;

(3) 客户端在之后的请求中,会带上Cookies数据,去请求服务端。

示例:

1、点击Cookies,可查看当前没有Cookies数据 

2、向服务端请求数据,服务端返回Cookies数据,响应数据如下 3、此时Cookies里新增这三个Cookies数据,下次再访问该服务器,则会自动带上Cookies数据。

 

8 Newman

运行命令 newman run

常用参数 

        -e        引用环境变量

        -g        引用全局变量

        -d        引用数据文件

        -n        指定测试用例迭代的次数

示例

1、导出 测试用例、全局变量、环境变量、数据文件

2、命令行窗口执行命令

newman run testcase.json -e environment.json -g globals.json -d mydata.json -r cli,html,json,junit --reporter-html-export report.html

3、可以使用Postman+Newman+Jenkins实现持续集成,其中Jenkins作用: 持续、自动地构建/测试软件项目,监控一些定时执行的任务。

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值