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代码贴出来,只要在服务器上运行这段代码,注意 ...
随机推荐
- Python 字典(键值对)
Python 字典(键值对) 创建字典 特性:字典中的键不能变,而且唯一 格式:变量名={"键1":值1,"键2":值2} 函数 作用 dict() 强制转换为 ...
- SpringBoot中的日志使用:
SpringBoot中的日志使用(一) 一:日志简介: 常用的日志接口 commons-logging/slf4j 日志框架:log4j/logback/log4j2 日志接口屏蔽了日志框架的底层实现 ...
- 哪一个 bash 内置命令能够进行数学运算?
bash shell 的内置命令 let 可以进行整型数的数学运算. #! /bin/bash--let c=a+b--
- spring学习二:jdbc相关回顾以及spring下dao
目录: Part一:回顾java web部分的jdbc.事务.连接池和dbutils工具等 : Part二:spring的JdbcTemplate使用: Part三:spring的事务处理: Part ...
- Java 中的 final 关键字有哪些用法?
修饰类:表示该类不能被继承: 修饰方法:表示方法不能被重写: 修饰变量:表示变量只能一次赋值以后值不能被修改(常量).
- 转:C++初始化成员列表
转载至:https://blog.csdn.net/zlintokyo/article/details/6524185 C++初始化成员列表和新机制初始化表达式列表有几种用法: 1.如果类存在继承关系 ...
- 遇到过的问题之“解决 No qualifying bean of type 问题”
1.问题 解决 No qualifying bean of type 问题 2.思路: 1 检查是否添加了对应注解 2 检查配置是否正确,扫描包名, 类名及id是否正确 一 . 传统SSM项目 ssm ...
- git 泄露(Log、Stash、Index)svn泄露
Git泄露 Log 首先介绍下.git:Git泄露:当前大量开发人员使用git进行版本控制,对站点自动部署.如果配置不当,可能会将.git文件夹直接部署到线上环境.这就引起了git泄露漏洞. 首先使用 ...
- 外部晶振的使用原因与内部RC振荡器的使用方法
原因一 早些年,芯片的生产制作工艺也许还不能够将晶振做进芯片内部,但是现在可以了.这个问题主要还是实用性和成本决定的. 原因二 芯片和晶振的材料是不同的,芯片 (集成电路) 的材料是硅,而晶体则是 ...
- AD软件Bug和自我失误的对战
说说我近期犯的两大过失,让我无语的过失,要购买重大责任险呀 一大过失:上图,看了下面的图想必大家都明白了,TOP层元件只有位号和焊盘,丝印边框哪去了? 别急,在这里,下图 为何他跑这里来了呢?我尝试了 ...