Ⅰ 如何用postman做接口测试
具体步骤如下:
1、在电脑桌面上找到安装的postman软件位置,鼠标双击图标打开;打开后显示如下界面即为打开成功。现在我们开始对一个接口进行测试。
Ⅱ 【接口测试】0 接口测试工具Postman简介
从今天开始,会持续更新一款接口测试必备工具-postman的系列使用文章,每天会更新一篇postman的使用技巧,希望对工作中用得到该工具的同学有所帮助。
Postman 最早是google的一个插件让空存在的,但是又google退出中国以及postman团队对工具的定位,主攻pc端app的开发及优化,现在的google插件已经很少再使用了,postman虽然是一个商用软隐袭件,但是对于我们普通用户来说,基本功能完全够用的。
Postman 从最初设计上就是为接口测试而生的,所以在程序员中广泛使用,在开发调试网络程序时跟踪一些网络请求,能够高效的帮助后端开发人员独立进行接口测试。
我们来看一下postman的主要功能:
1、Postman是一款功能强大的网页调试、HTTP请求发送及接口测试用例运行的工具
2、能够模拟各种HTTP Request如GET、POST 、header、 PUT、 DELETE…等等
3、请求中还可以发送文件(图片、文本文件等)、额外的header等,实现特定的接口测试
4、能够高效的帮助后端开发人员独立进行接口测试
5、Postman提供了云服务,支持数据同步及团队协作等
6、提供了丰富的HTML格式的报告模板
7、不仅仅进行坦携瞎接口测试,而且是一个API管理工具
8、Postman是一款最常见的REST风格接口测试工具。
9、.................
在后面的系列文章中包括但不限于下面的专题:
1、Postman 工具的安装及注册
2、Postman接口测试的流程
3、Postman 发送get请求
4、Postman 发送post请求-x-www-from-urlencoded格式参数使用
5、Postman 发送post请求-form data格式参数使用(file文件上传)
6、Postman 发送post请求-Json格式参数使用
7、Postman 环境变量的使用
8、Postman pre-requests的使用
9、Postman test断言功能的使用
10、Postman Runner的使用
11、Postman Data数据文件处理
12、Postman monitor功能使用
13、Postman Newman命令行工具的使用
14、Postman与Jenkins集成使用
15、Postman进行Soap webservice接口测试
16、Postman使用mock进行挡板测试(1)
17、Postman使用mock进行挡板测试(2)
..............
暂时先规划这么多,后面在写的过程中,遇到好的点,会增加进来,今天就先写到这。
Ⅲ 适用于Mac系统的API接口调试应用
Apifox 中文版是一款适用于 Mac 的API接口调试应用。官方介绍 Apifox = Postman + Swagger + Mock。Apifox 可以用于接口文档、接口调试、Mock、自动化测试,可以帮助大大提升开发效率!
软件开发过程中,接口管理、调试、自动化测试是必不可少的,我们经常使用 Postman 等工具来进行接口调试,在接口调试方面 Postman 做的非常出色。但是在整个软件开发过程中,接口调试只是其中的一部分,还有很多事情 Postman 无法完成,或者无法高效完成,比如:接口文档定义、Mock 数据、接口自动化测试等等。而 Apifox 就是为此而生的。
可视化接口管理
支持数据结构行歼(JSON Schema)管理,多接口可复用相同数据结构。
接口调试
Postman 有的功能,比如环境变量、预执行脚本、后执行脚本、Cookie/Session 全局共享 等功能,Apifox 都有,档隐冲并且和 Postman 一样高效好用。
自动校验数据结构
接口调试时,自动校验返回的数据结构是否符合接口文档定义,一键发现接口数据异常。
接口数据 Mock
内置 Mock.js 规则引擎,非常方便携念 mock 出各种数据,并且可以在定义数据结构的同时写好 mock 规则。 支持自定义期望,灵活配置根据参数值返回不同数据内容。 零配置即可 Mock 出非常人性化的数据。
自动化测试
完善的接口自动化测试功能,保证接口数据的正确性。 支持自定义脚本,自动化检查数据正确性。自定义脚本语法 100% 兼容 Postman,降低学习成本。
数据导入/导出
支持导出 OpenApi (原Swagger)、Markdown、Html 等数据格式。 支持导入 OpenApi格式(原Swagger)、Postman、HAR、RAP2、yapi、Eolinker、DOClever、ApiPost、Apizza 等数据格式。
Ⅳ 如何用postman做接口测试
方法/步骤
在Google已安装念唯扒完成的接口测试工具的postman的程序之后,点击进入桌面的chrome应用启动器。
进入到应用启动器界面中之后,可以看到是postman的应用图标程序。点击进入。山掘
进入到postman的欢迎的界面中,如果有账号可以进行点击登录账号,无账仔昌号可以点击Go
to
the
app进入。
这样就进入到postman界面中,进行对网络网址进行测试话,选择get请求,把网络网址在输入框中输入。
输入完成之后,然后进行点击send。
如果测试用成功,返回的status为200
ok,而在下列的是放回的网络首页的元素信息。这样网络首页接口测试就成功了。
Ⅳ Postman 接口测试(变量与参数化)
上一篇文章 我们学习了用例断言,添加了断言后一个测试用例就算完成啦。如果要写获取另外一个城市天气信息的测试用例,你会怎么做?
可能第一反应就是复制上面的用例岩腊枝脚本,把里面的 location 值换成另外一个城市的就可以了。这样做可以实现,但这里我们学习另外一种实现的方式,局枯用变量替换 location 的具体值,然后把具体 location 值从其他地方调用过来使用。
Postman 中可以创建粗敏 Environment 变量(相当于局部变量)和 Globals 全局变量。
首先,我们来学习一下创建和调用 Environment 变量。
学习完 Environment 变量后,我们接着来学习 Globals 变量。
以上就是变量的一些知识,但不管是 Environment 变量还是 Globals 变量都是在调试脚本的时候用得比较多。如果批量或者重复执行用例时,需要用到大量的数据,Environment 变量和 Globals 变量就很难满足数据要求了。
Ⅵ API管理工具之Postman脚本编写
原文地址: https://www.jianshu.com/p/ff5de99dffe2
Postman中支持脚本的编写,可以利用脚本来实现变量的设置,做如侍参数的增加以及结果的测试等等。
使用场景介绍:比如我们在用户token,一段时间后过期,每次要重新手动替换比较麻烦吧?更不符合自动化的理念。
解决方案:在登录的Test脚本更新环境中的token中的变量橡蠢。
如下示例:
Postman中支持在三个地方编写脚本:
其中collection和folder中脚本的入口如下:
Postman中事件可分为四种:
具体的执行顺序如下:
有两种:
打开之后就可以看到脚本中的输出日志了。
脚本有pre-request和test两种,所在位置如下:
在请求发送之前执行,可纯吵用于设置环境变量。
示例:
在收到返回结果后执行,可用于验证返回结果。
示例:
Postman之所以支持脚本的编写是因为Sandbox,这是一个JavaScript的运行环境。
Ⅶ PostMan进阶——测试脚本的编写
预处理脚本(Pre-request script)
断言脚本(Tests script)
请求之前添加的脚本,我们称为预处理(Pre-request Script) ,预处理脚本与Jmeter的前置处理器类似,主要作用就是一些初始化的功能
请求本身的问题,但是“请求前后的动作”是怎么处理的?
比如在发送一个请求前,需要获取当前系统时间戳,这就需要用到Pre-request Script的知识。请求返回响应结果后,如何自动判断响应是否正确?这就需要用到Tests的知识。
postman支持javascript,允许测试人员给请求和集合添加动态行为,通过使用javascript脚本,可以构建包含动态参数的请求,在请求之间传递数据。可以在下面两个事件流中添加javascript脚本。
1、在请求发送前,添加作为“Pre-request Script”选项下的预处理脚本
2、在收到响应后,添加测试脚本进行断言、流程控制
可以将预处理和测试脚本添加到一个集合、一个文件、一个请求中。
1、为集合添加脚本
2、为文件添加脚本
3、为请求添加脚本
在Postman中,单个请求的脚本执行顺序如图
1、与请求相关联的预请求脚本将在请求发送之前执行
2、与请求关联的测试脚本将在接收响应之后执行。
对于集合中的每个请求按顺序执行
1、与集合相关的预请求脚本将在集合中的每个请求之前运行
2、与文件夹相关联的预请求脚本将在文件夹中的每个请求之前运行。
3、与集合相关的测试脚本将在集合中的每个请求之后运行。
4、与文件夹关联的测试脚本将在该文件夹中的请求之后运行。
对于集合中的每个请求,脚本总是按照下面的层次结构运行:集合级脚本、文件夹级脚本、请求级脚本。此执行顺序适用于预请求和测试脚本。为了验证其正确性,可以创建这样一个集合,其中包含一个文件夹和两个请求。
2 测试脚本
预处理脚本,指在请求发送之前执行的脚本。如果想在请求发送时包含当前时间戳或者一个随机的字符,前端加密等,在这个场景下使用前置脚本。例如,要在请求头中包含一个时间戳,可以设置一个环境变量,其值从函数返回。
预处理脚本将被执行,并且timestampHeader的值将被赋值给变量{{timestampHeader}}。body中通过使用{{timestampHeader}}来传递变量。
Postman准备了常用脚本实例,这些脚本能够满足大多数接口测试的需求,接下来,一起认识一下它们,Postman在右侧区域列出了常用脚本。
演试案例:
准备接口
打开“Postman Console”
了解console.log()
接口描述:
Postman Console窗口输出内容的顺序体现了脚本执行的顺序,Pre-request Script请求中的脚本先执行,然后才发送接口的请求
设置变量、获取变量值脚本
1、设置一个全局变量
pm.globals.set("variable_key", "variable_value");
2、设置一个环境变量
pm.environment.set("variable_key", "variable_value")
3、获取一个全局变量
pm.globals.get("variable_key")
4、获取一个环境变量
pm.environment.get("variable_key")
演试案例:
演试内容:Postman在右侧区域列出了常用脚本的演试
通过console.log输出globals、environment当前的环境变量,Postman Console窗口的输出情况。
清除变量的脚本
1、清除一个全局变量
pm.globals.unset("variable_key")
2、清除一个环境变量
pm.environment.unset("variable_key")
发送请求的脚本
1、发送一个请求
pm.sendRequest()
响应之后添加的脚本,称为测试脚本(Tests Script),即断言脚本,测试脚本主要用于接口断言,类似LoadRunner工具中的检查点、Jmeter中的断言功能。需要使用javascript语言为每个请求编写测试脚本。
测试脚本相关方法:
1、检查响应体中是否包含一个字段
pm.expect(pm.response.text()).to.include("指定的内容")
2、将xml格式额响应体转换程Json对象
varJson=xml2JSON(responseBody)
3、检查响应体等于一个字符串
pm.response.to.have.body("指定的内容")
4、检测响应体的JSON值
varJSON=pm.response.JSON();//将结果转换程json格式
pm.expect(JSON.value).to.eql(“目标数”);
5、检测响应体中包含某个header
pm.response.to.have.header("Content-Type")
6、检查响应时间,要求小于100ms
pm.expect(pm.response.responseTime).to.be.below(100);
7、要求该接口响应码为200
pm.varibles.get("指定状态码")
8、要求响应状态中包含某个字符
pm.response.to.have.status("OK")
9、要求status code符合某个条件
pm.expect(pm.response.code).to.be.oneOf([200,201,202])
关于postman测试脚本中接口返回结果比较复杂的断言,且需要对多个值进行断言的情况,通过一个示例说明。
假如该接口mock出参如下:
我们需要断言其中的多个字段,可如下断言:
Ⅷ postman测试沙箱
Postman沙箱是一个JavaScript执行环境,当你为请求编写预请求脚本或测试脚本时,编写的脚本在唤高这个沙箱中进行。
就是结合了JS脚本完成测试中的功能,在请求发起前后实现部分测试操作。
接口请求之前执行的脚本。
接口请求之后执行的脚本,通常用于断言的操作。
在测猛茄试的时枝链察候我们需要对测试结果进行校验,判断结果是否符合我们的预期,这个过程就叫做断言。
Ⅸ postman测试接口通过脚本动态设置请求头参数
1、设置雹仔枝戚搭环境变量appId和secret
2、设置源敏脚本
Ⅹ postman中怎样使用脚本生成一个坏境变量
这个问题比较复杂.简单来说,你要根据接口功能需求,写对应tests
如:请求正确发出和接收,则需要检测状态码是否为200,可以这样写:
tests["Status code is 200"] = responseCode.code === 200;
需要返回结果是否包含某一字段(如user_name),可以这样写:
tests["Body matches user_name"] = responseBody.has("user_name");
建议你看看简书网站上的这篇文章的第四节:Testing 实例
http://www.jianshu.com/p/61cfcb436ee4
另外初学者直接在简书上面搜索postman,可以找到很多有用的知识.建议你去好好看看