4.18-token验证
在postman编写的每一个叫测试用例,既然收测试用例,那么就会有结果对比
API测试断言tests(判断一个接口测试用例是否成功,或者说是通过,是根据断言的三个条件都成立的情况下得到的结果)
协议状态码
例:登录错误的状态码 返回响应数据只需要验证101
响应数据
业务状态码(是程序员根据自己的想法来定义的)
tests
(例如)
//定义一个变量来存放响应数据
var jsonData=JSON.parse(responseBody)
//查看返回的响应数据
console.log("查看响应数据\n",jsonData)
//验证协议状态码
pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});
tests["验证username字段"]=jsonData.user.username=="无涯"
console.log(jsonData.user.usernamne)
//验证usermane字段
var abc={
"a":{
"aa":"aaa"
}
}
console.log(abc.a.aa)
例如:验证uid和telephone
reports explore
collections:集合,就收测试用例的套件,在这个容器里可以存放很多的测试用例,测试套件。
保存:
collections--》点击+修改名称点击save
在postman,调用变量的方式是:
{{变量名}}
动态参数在postman的解决思路(登录为例)
1、登录成功后,在登录接口的tests中定义一个变量来获取响应数据中的动态参数token
2、在下个接口(比如首页等等)中,调用定义的变量,调用的方式是{{变量名}}
3、那么这个过程,需要把登录接口和引用登录接口的变量的接口都需要添加到collection中,它的顺序是登录结论在前
4、然后执行collection,这样就能够实现动态参数的关联
例如:
动态参数/关联/上个接口的输出是下个接口的输出
练习总结:13484545195
登录
auth---》url---》body(copy--》payload--》preview--view source)选json---》》tests
tests:
1.var jsonData=JSON.parse(responseBody) 定义一个变量来存放响应数据
2.pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
}); 验证协议码状态
3.tests["验证username字段"]==jsonDate.user.username=="无涯" 验证XXX比如用户名
4.pm.environment.set("setToken", "jsonData.token"); 获取token
5.验证token
1)、pm.environment.set("getToken", jsonData.token);console 定义一个变量
2)、pm.environment.get("getToken"))获取token变量
3)、tests["验证token的值"]=jsonData.token==pm.environment.get("getToken") 获取验证token的值
首页
index==》url==》headers(authorization--JWT(getToken))
查看preview- api值为0
tests:
1.var jsonData=JSON.parse(responseBody) 定义一个变量来存放响应数据
2.pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
}); 验证协议码状态
3.tests["测试用例个数"]=jsonData.count.api="0"
添加
product==》url==》headers(authorization--JWT(getToken))
code=201
tests:
1.var jsonData=JSON.parse(responseBody) 定义一个变量来存放响应数据
2.pm.test("Status code is 201", function () {
pm.response.to.have.status(201);
});
3.pm.environment.set("productID", "jsonData.id");先设置变量环境
4.tests["验证productid"]=jsonData.id== 验证
5.pm.environment.get("productID");最后设置变量环境
删除
3026==》url==》headers(authorization--JWT(getToken))
code=204
tests:
pm.test("Status code is 204", function () {
pm.response.to.have.status(204);
}); 删除不用定义一个变量来存放响应数据 直接填验证协议状态码
修改
3033==》url==》headers(authorization--JWT(getToken))
code=200
tests:
1.pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
}); 修改不用定义一个变量来存放响应数据 直接填验证协议状态码
2.var jsonData=JSON.parse(responseBody) 定义一个变量来存放响应数据
3.tests["验证产品信息ID"]==jsonData.id== 验证产品ID
4.pm.environment.get("productID"); 获取环境变量
4.18-token验证的更多相关文章
- Token验证失败
Token验证失败 微信 微信公众平台开发 Token校验失败 URL Token原文 http://www.cnblogs.com/txw1958/p/token-verify.html Token ...
- Web APIs 基于令牌TOKEN验证的实现
Web APIs 基于令牌TOKEN验证的实现 概述: ASP.NET Web API 的好用使用过的都知道,没有复杂的配置文件,一个简单的ApiController加上需要的Action就能工作.但 ...
- Token验证失败的解决方法
Token验证失败 微信 微信公众平台开发 Token校验失败 URL Token原文 http://www.cnblogs.com/txw1958/p/token-verify.html Token ...
- Django restframework之Token验证的缺陷及jwt的简单使用
一.主要缺陷: 1.Token验证是放在一张表中,即authtoken_token中,key没有失效时间,永久有效,一旦泄露,后果不可想象,安全性极差. 2.不利于分布式部署或多个系统使用一套验证,a ...
- ASP.NET Web APIs 基于令牌TOKEN验证的实现(保存到DB的Token)
http://www.cnblogs.com/niuww/p/5639637.html 保存到DB的Token 基于.Net Framework 4.0 Web API开发(4):ASP.NET We ...
- 总想自己动动手系列·3·微信公众号和外网服务交互之通过TOKEN验证(准备篇·1)
一.准备工作 (1)准备一个微信公众号(对私的订阅号或者对公的服务号). (2)准备一台部署了web应用,并且已经发布出去的Linux服务器(需要说明的是:微信公众号强烈建议使用80端口,使用其他自定 ...
- NodeJS 微信公共号开发 - 响应微信发送的Token验证(山东数漫江湖)
背景 使用 NodeJS 进行微信公共号开发,首先需要响应微信发送的Token验证,官方文档 填写服务器配置 登录微信公共平台,在开发下的基本配置打开该页面. 依次填写接口的 URL.自定义的 Tok ...
- 你的服务器没有正确响应Token验证的解决方法
你的服务器没有正确响应Token验证,请阅读消息接口使用指南 微信 微信公众平台开发模式 平台 消息 接口 启用 URL Token作者:http://txw1958.cnblogs.com/ 原文: ...
- 微信公众平台消息接口开发(2)你的服务器没有正确响应Token验证的解决方法
你的服务器没有正确响应Token验证,请阅读消息接口使用指南 微信 微信公众平台开发模式 平台 消息 接口 启用 URL Token作者:http://txw1958.cnblogs.com/ 本系统 ...
- 服务器通过微信公众号Token验证测试的代码(Python版)
我在阿里云租了一个云服务器,然后想把这个作为我的微信公众号的后台,启用微信公众号开发者需要正确的响应微信服务器的Token验证,为此把这个验证的Python代码贴出来,只要在服务器上运行这段代码,注意 ...
随机推荐
- JDK中哪些类是不能继承的?
不能继承的是类是那些用final关键字修饰的类. 实际上即使我们自己开发的类,也可以通过使用final修饰来阻止被继承.通过使用final修饰一个类,可以阻止该类被继承,这样该类就被完全地封闭起来了, ...
- WebSQL是HTML 5规范的一部分吗?
不是,虽然很多人将其标记为HTML 5,但它不是HTML 5规范的一部分.HTML 5规范基于SQLite.
- 学习ansible(一)
1.介绍 1 ansible基于Python开发的自动化运维工具 2 ansible基于ssh协议实现远程管理的工具,没有客户端 3 ansible软件可以实现多种批量管理操作 2.环境 主机 IP ...
- 学习zabbix(九)
一.Zabbix环境准备 [root@linux-node1 ~]# cat /etc/redhat-release CentOS Linux release 7.4.1708 (Core) [roo ...
- java中如何获得src路径
代码 解析: 类名.class.get类加载器().getResourceAsStream("文件名"); 案例代码: Demo.class.getClassLoader().ge ...
- 【Web Audio API】 — 那些年的 web audio
转 TAT.Jdo:[Web Audio API] - 那些年的 web audio 这主题主要是早期对 web audio api的一些尝试,这里整理一下以便以后翻阅,如有错误,诚请指正. 在这之前 ...
- Linux 0.11源码阅读笔记-中断过程
Linux 0.11源码阅读笔记-中断过程 是什么中断 中断发生时,计算机会停止当前运行的程序,转而执行中断处理程序,然后再返回原被中断的程序继续运行.中断包括硬件中断和软件中断,硬中断是由外设自动产 ...
- 【小程序开发】 点击button按钮,引导用户授权
一. 前言 小程序官方文档,上面说明 wx.getUserInfo(OBJECT) 注意:此接口有调整,使用该接口将不再出现授权弹窗,请使用 <button open-type="ge ...
- es6语法之模版字符串
//es6语法之`${}`以及vue语法 `${ }` (模版字符串)const name = '小缘' const age = 14 console.info(`大家好,我叫${name},今年${ ...
- What is ACPI
What is ACPI, OnNow, and PCI Power Management? Microsoft began an initiative called OnNow to shorten ...