前言

进行post高级应用的一个整理。

正文

批量测试和简单自动化测试

在点击collects的列表中,会弹出下面这个选项。

上面有3个按钮,分别是分享、运行、展示在网页中。

那么就看下这个运行吧。

打开之后会看到该界面:

上面有个下拉框,label是Environment,可以选择我们运行环境,这个下面会介绍,运行环境不同参数也就不同了。

iterations 执行多少次。

Delay 延迟多少毫秒

Data 放入一些数据。这个数据用于测试数据,在测试用例中可以读取使用。

下面有4个小框框。

1.是否保存返回结果

2.是否保存变量值。

runner运行设置前没有勾选keep variable value,如果不勾选keep variable value,则运行Collection Runner中修改的任何变量都不会影响Postman主应用中对应的环境变量值,在Collection Runner运行完成后恢复environment原始的值

如果运行时勾选keep variable value,则Collection Runner运行完成后Postman主应用中对应的环境变量值变更。

3.是否使用cookie

4.是否保存cookie在collection运行后

运行完后就可以看到结果,结果如下:

那么正式开始介绍细节吧。

author 2.0认证

这个操作就有点复杂的了。

这个在后面identity4中,结合例子把Author2.0测试一遍。

下面贴下图:

环境变量和全局变量

这个概念很好理解,就是当前环境在加载的时候会先加载环境变量。

最左边的这个东西:

然后打开后

几个参数的意思分别是:

variable:变量,可以理解为key

initial value 初始化值,这个是分享给team中其他人,其他人得到的值。

current value 当前值,就是测试的时候会用到的值。

persist all:将current value 替换掉initial value

reset all 全部重置。

然后可以这样使用:

后面会介绍更多的调用方式。

看下全局变量吧。

全局变量就是不管你选那个环境,都会存在的变量。

那么环境变量和全局变量冲突,那么会选择环境变量。

Pre-request Scripts

这个是提前脚本,这个就是在你的api调用前它可以做的一些事情。

这个可以做一些啥子呢?

比如说,你想调用id 1到100的结果,类似爬虫吧。

那么你可以这个干。设置一个环境变量为0,然后你再提前脚本中每次增加1。

然后在后面介绍的api执行后的结果中输出即可。

设置了环境id为0;

然后自定义raw为:

{
"id":{{id}},
"title":"123"
}

然后pre script为:

console.log(pm.variables.get("id")+1);

pm.variables.set("id",parseInt(pm.variables.get("id"))+1);

然后我在循环10次:

结果为:

{
{
"id": 1,
"title": "123"
},
{
"id": 2,
"title": "123"
},
{
"id": 3,
"title": "123"
},
{
"id": 4,
"title": "123"
},
{
"id": 5,
"title": "123"
},
{
"id": 6,
"title": "123"
},
{
"id": 7,
"title": "123"
},
{
"id": 8,
"title": "123"
},
{
"id": 9,
"title": "123"
},
{
"id": 10,
"title": "123"
}
}

再比如说我们在调用api的参数中,需要动态生成时间戳、aes加密等,那么我们需要做的就更多了。

在其左侧有提示栏,告诉我们一些常用的函数:

点击红框部分,可以去查看文档。

然后很多脚本,需求可以百度的到,不需要自己去花太多时间构想。

测试

当我们运行完毕后肯定要进行测试了。

这个时候,在左边有一个tests模块。

设置断言可以这样写:

//信息存储
tests["Status code is 200"]=responseCode.code==200
pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});

第一种直接是:tests["Status code is 200"]=responseCode.code==200

第二种复杂的就写在一个方法里面。

同样其左边为我们提供非常多函数,可以点击一个一个试试看。

生成代码

有时候我们可能要在服务器上做一个快速简单的测试。

postman其实是可以帮助我们生成代码。

点击旁边的code:

可以帮我们生成多种语言的demo。

其他应用

postman还可以让我们设置一些其他选项,如是否https证书验证,请求时间等等等。

其他api测试工具

因为postman团队作战的时候是连接的是国外服务器,所以很多人也用apipost,或者自己搭建。

现在很多api测试工具,度能够测试数据库了,如一些检测机制,可以连接到数据库进行一些检测操作(当然是连接测试数据库了)。

postman 基本应用的更多相关文章

  1. Postman - 功能强大的 API 接口请求调试和管理工具

    Postman 是一款功能强大的的 Chrome 应用,可以便捷的调试接口.前端开发人员在开发或者调试 Web 程序的时候是需要一些方法来跟踪网页请求的,用户可以使用一些网络的监视工具比如著名的 Fi ...

  2. postman使用

    1.postman的下载:google首页左上角应用,点击后,如果没有下载postman,就在google商店搜索,点击右边按钮 2.下载后重新打开google首页,点击应用,可以看到已经下载过了,点 ...

  3. 复习(2)【postman,charles,filezilla server】

    Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件.通常我们可以用它来测试接口. Charles是在Mac下常用的网络封包截取工具,在做移动开发时,我们为了调试与服务器端的 ...

  4. postman 断言解析

    最近在学习postman官方文档, 顺势翻译出来,以供学习! postman断言是JavaScript语言编写的,在postman客户端指定区域编写即可. 断言会在请求返回之后,运行,并根据断言的pa ...

  5. postman发送带cookie的http请求

    1:需求:测试接口的访问权限,对于某些接口A可以访问,B不能访问. 2:问题:对于get请求很简单,登录之后,直接使用浏览器访问就可以: 对于post请求的怎么测试呢?前提是需要登录态,才能访问接口. ...

  6. postman测试接口之POST提交本地文件数据

    前言: 接口测试时,有时需要读取文件的数据:那么postman怎么添加一个文件作为参数呢? 实例: 接口地址: http://121.xxx.xxx.xxx:9003/marketAccount/ba ...

  7. Web接口测试工具---Poster与Postman

    工作当中有不少时间在编写和维护接口自动化测试用例.打算先整理一些接口相关工具的使用. 简单对接Web口测试的相关工具/技术做个划分. HTTP/SOAP协议接口的功能测试: 1.浏览器URL(GET请 ...

  8. WebAPI生成可导入到PostMan的数据

    一.前言 现在使用WebAPI来作为实现企业服务化的需求非常常见,不可否认它也是很便于使用的,基于注释可以生成对应的帮助文档(Microsoft.AspNet.WebApi.HelpPage),但是比 ...

  9. postman使用之五:Runner的使用

    1.首先在postman新建要批量运行的接口文件夹,新建一个接口,并设置好全局变量. 2.然后在Test里面设置好要断言的方法 如: tests["Status code is 200&qu ...

  10. postman使用之三:API请求和查看响应结果

    请求 postman支持很多请求类型,界面左侧可以看到请求类型:get.post.put.patch等,右侧是发送和保存按钮,下方是请求支持的认证方式.信息头.信息体.私有脚本和测试结果.下面我们介绍 ...

随机推荐

  1. clion更改大括号的位置

    进入setting 搜索code style 如果是c++ /c 选择这个选项点开 wrapping and brace 里面 有brace placement 选择你想要的方式

  2. PHP array_udiff() 函数

    实例 比较两个数组的键值(使用用户自定义函数比较键值),并返回差集: <?phpfunction myfunction($a,$b){if ($a===$b){return 0;}return ...

  3. Echarts饼图绘制

    实现效果: html代码: <div id="chartBody1" style="width:120%;height:28vh;"> <di ...

  4. css浮动属性

    1.为什么需要浮动 HTML中的标签元素大致分为三类:块状元素.内联元素.内联块元素. 每种元素都有其各自的特点,其中块状元素会独占一行,而内联元素和内联块元素则会在一行内显示.如果我们想让两个甚至多 ...

  5. OpenCL Kernel设计优化

    使用Intel® FPGA SDK for OpenCL™ 离线编译器,不需要调整kernel代码便可以将其最佳的适应于固定的硬件设备,而是离线编译器会根据kernel的要求自适应调整硬件的结构. 通 ...

  6. 在Spring Boot中动态实现定时任务配置

    原文路径:https://zhuanlan.zhihu.com/p/79644891 在日常的项目开发中,往往会涉及到一些需要做到定时执行的代码,例如自动将超过24小时的未付款的单改为取消状态,自动将 ...

  7. 数据洞察 | Python解读地摊——你想好摆摊去卖什么了吗?

    知乎上有一个问题:疫情结束后,你最想做的一件事是什么? 很多人学习python,不知道从何学起.很多人学习python,掌握了基本语法过后,不知道在哪里寻找案例上手.很多已经做案例的人,却不知道如何去 ...

  8. Spring IOC 启动过程

    1. 引言 本篇博文主要介绍 IOC 容器的启动过程,启动过程分为两个步骤,第一个阶段是容器的启动阶段,第二个阶段是 Bean 实例化阶段,这两个阶段各自需要执行的步骤如下图,接下来会一一介绍. 需要 ...

  9. C#LeetCode刷题之#747-至少是其他数字两倍的最大数( Largest Number At Least Twice of Others)

    问题 该文章的最新版本已迁移至个人博客[比特飞],单击链接 https://www.byteflying.com/archives/3746 访问. 在一个给定的数组nums中,总是存在一个最大元素 ...

  10. NodeJs path.resolve的使用

    __dirname __dirname 指向运行代码的文件夹 console.info('__dirname', __dirname) // C:\Leslie\Web_learning\Daily- ...