【Postman使用教程】

postman

postman工具:基础版本免费,足以够用。linux系统可以使用curl命令行工具进行接口测试,但是各种参数比较多,要求较高。

postman只支持http协议

1.get请求也可以直接使用浏览器访问,但是浏览器无法定制化请求,比如定制header

 2.chrom版本和native版本的区别

A.native版本可以直接操作cookie,进行登录鉴权,而chrome版本需要安装扩展

B.native版本自带proxy,可以用来抓包

C.native自带菜单栏,用起来方便灵活

D.有一些headers在chrom版本上是受限的,比如Origin and User-Agent。User-Agent是身份证,通过这个服务器可以知道我们是哪个浏览器或者操作系统

E.native版本可以选择不跟踪重定向,比如可以返回300,301类的状态码

D.native自带console,可以在调试和打印的时候用,把console.log打印出来到控制台 。postman断言(检查点)一般用js语言写

http协议:

http请求:一般包含起始行,headers和body,headers其实都是一些配置,配置一些服务器的参数,请求的最后一部分是它的 body。不是所有的请求都有一个 body:例如获取资源的请求,GET,HEAD,DELETE 和 OPTIONS,通常它们不需要 body。 有些请求将数据发送到服务器以便更新数据:常见的的情况是 POST 请求(包含 HTML 表单数据)

http响应:一般包含状态行,headers和body,headers其实都是一些配置,配置一些服务器的参数。headers可以设置客户端的额cookie,响应的最后一部分是 body。不是所有的响应都有 body:具有状态码 (如 201 或 204) 的响应,通常不会有 body

Test功能:是一个js的sand box,可以执行行js的隔离环境,并不是可以访问一切的全局变量。

设置全局变量(全局公用),设置环境变量(模拟并切换测试和生成环境),拿到并处理请求的响应(一般转化成js对象),定义测试检查点和断言(检查结果,也可以根据相因时间做一些简单的性能监控)

 

===表是完全相等包括类型和值

 sandbox:

 常用的公共库:

loadsh:简化json或者迭代操作

cherrio:解析html,可以理解为简单的juery

CryptoJs:用于加密解密

chai:用于优雅格式的断言,一个框架

lodash:处理cookie,也提供了forEach语法

 ui测试:可以用于ui测试,交互比较弱。一般只是获取页面HTML、对页面标签进行解析来判断元素是否存在

 

cookie:

console.log(pm.cookies.get('_itest5_session'));

 鉴权- - -常见机制token+basic Authentication, 最主要是获取token,然后设置headers

加密,数据发送到后台是加密的。还有一个第三方登录跳转是通过OAuth2.0实现的

Pre-requestScript: 初始化一些操作,比如定义环境变量,全局变量等

collections:容器

 

监控和mock server收费

 变量:比如测试和生产环境domain不一致,就可以定义环境变量。比如状态码或者数据和环境没关系,就可以定义为全局变量,哪个环境都能用。两个{{}}定义

变量冲突,当环境变量和全局变量冲突时,选择环境变量是,环境变量会覆盖全局变量

 参数关联:

1.先创建一个环境变量,参数值不写

2.发送被依赖的接口请求,获取相应内容,并将其值设置为环境变量的值

3.在同一个环境中,使用该变量即可

 

数据驱动测试:就是由数据来指导测试。比如其他条件都一样,只是数据不同,有数据来决定结果成为数据驱动测试。支持json格式和cvs格式文件。

 使用datatfile进行数据驱动测试,获取文件的参数需要使用data关键字。

 命令行运行:可以在无界面或者持续集成系统上运行(就是执行运行脚本命令)

 postman使用newman进行,Newman是个nodejs写的小工具。先安装nodejs和npm(一般cnpm,因为国内npm访问不太好)

依次安装node.js,安装cnpm

淘宝源安装

npm install -g cnpm -registry=https://registry.npm.taobao.org    

配置

cnpm -v

node -v

 安装newman:cnpm install newman --global

newman -h

测试报告:

CLI命令行格式报告比较优美

 json格式可以存储在mangodb进行持久化,或者存在关系型数据库进行解析

html格式便于发邮件展示

junit格式可以在测试结束后会自动发解析放在jenkins里,下次build的时候是可以看到报告的

 

 -d:数据文件, -r:指定测试报告

导出语言脚本

 

 选择所需要的语言,后面就是跟postman无关了。运用我们熟悉的语言进行各种处理。此时postman充当一个调试的作用,接口调通。

Postman调试依赖登录接口的3种方法:

1.依次请求
如果有登录接口的文档,或者通过抓包比较容易抓出登录请求的参数和格式,可以先使用Postman请求一下登录接口,这时Cookies会存到本地(可以通过Postman Cookies管理器查看), 然后再发送依赖登录的接口即可, 如图:

由于Postman一般用作调试接口, 依次请求也不是很麻烦

2.抓取Cookies, 绕过登录(常用)
如果没有登录接口文档也懒得抓包分析登录接口,可以直接在浏览器上登录后,随便访问一个页面抓取出Cookie, 在Postman中添加到依赖登录接口的Header中(注意: 是Cookie没有s, 对应的值直接粘贴就可以,不用分成几行)



3.使用Pre-request Script脚本请求前发送登录请求
如果使用Postman作为接口自动化测试工具, 我们可以在请求前脚本中发送登录请求来使请求具有登录状态, 如图:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值