postman 脚本学习
pm的脚本断言库默认似乎是集成chaijs的。所以重点也要掌握chaijs的用法,其实和其他断言库类似。玩着玩着就会了。推荐看看 简书 chaijs 中文文档
传送门:
# pm 脚本的教程
https://learning.getpostman.com/docs/postman/scripts/test_scripts/ # pm 沙盒环境的一些 api
https://learning.getpostman.com/docs/postman/scripts/postman_sandbox_api_reference/ # chaijs 官方 github
https://github.com/chaijs/chai # 简书 chaijs 中文文档
https://www.jianshu.com/p/f200a75a15d2 # chaijs 官方文档
https://www.chaijs.com/api/ # qq 邮箱设置白名单
noreply@notifications.getpostman.com
# 可以呼出chrome dev tool,所以test脚本中可以使用console.log
ctrl + shift + i
判断数组长度
pm.test("返回数组长度必须大于0", function () {
var jsonData = pm.response.json();
pm.expect(jsonData).to.have.length.above(0);
});
判断是否拥有属性
pm.test("对象应该拥有指定7个属性", function () {
var jsonData = pm.response.json();
pm.expect(jsonData).to.have.property("attitude");
pm.expect(jsonData).to.have.property("inefficient");
pm.expect(jsonData).to.have.property("plug");
pm.expect(jsonData).to.have.property("notOpen");
pm.expect(jsonData).to.have.property("window");
pm.expect(jsonData).to.have.property("hardware");
pm.expect(jsonData).to.have.property("inconvenient");
pm.expect(jsonData).to.have.property("other");
});
但这种写法太冗余了,可以更灵活的书写
// have.all.keys:目标对象必须且仅能拥有全部传入的属性名(不能多,不能少)
// contains.all.keys:目标对象必须至少拥有全部传入的属性名,但是它也可以拥有其它属性名(只能多,不能少)
// have.any.keys:目标必须至少存在一个传入的属性名才能通过测试(至少一个)
pm.test("对象应该拥有指定7个属性", function () {
var jsonData = pm.response.json();
pm.expect(jsonData).to.have.all.keys("attitude", "inefficient", "plug", "notOpen", "window", "hardware", "inconvenient", "other");
});
postman 脚本学习的更多相关文章
- 笔记——shell脚本学习指南
<shell脚本学习指南>机械工业出版 ISBN 987-7-111-25504-8 第2章 2.4 初级陷阱 1.当今的系统,对#!这一行的长度限制从63到1024个字符都有,尽量不要超 ...
- 06- Shell脚本学习--其它
Shell输入输出重定向 Unix 命令默认从标准输入设备(stdin)获取输入,将结果输出到标准输出设备(stdout)显示.一般情况下,标准输入设备就是键盘,标准输出设备就是终端,即显示器. 输出 ...
- 05- Shell脚本学习--函数
函数可以让我们将一个复杂功能划分成若干模块,让程序结构更加清晰,代码重复利用率更高.像其他编程语言一样,Shell 也支持函数.Shell 函数必须先定义后使用. 函数定义 Shell 函数的定义格式 ...
- 04- Shell脚本学习--条件控制和循环语句
条件判断:if语句 语法格式: if [ expression ] then Statement(s) to be executed if expression is true fi 注意:expre ...
- 03- Shell脚本学习--字符串和数组
字符串 字符串是shell编程中最常用最有用的数据类型(除了数字和字符串,也没啥其它类型好用了),字符串可以用单引号,也可以用双引号,也可以不用引号.单双引号的区别跟PHP类似: 单双引号的区别: 双 ...
- 02- Shell脚本学习--运算符
Shell运算符 Bash 支持很多运算符,包括算数运算符.关系运算符.布尔运算符.字符串运算符和文件测试运算符. 算术运算符 原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 aw ...
- 01- Shell脚本学习--入门
简介 Shell是一种脚本语言,那么,就必须有解释器来执行这些脚本. Unix/Linux上常见的Shell脚本解释器有bash.sh.csh.ksh等,习惯上把它们称作一种Shell.我们常说有多少 ...
- Shell 脚本学习资料搜集
Shell文档 ChinaUnix上大神“網中人”总结的Shell十三问,强烈推荐,这本书讲得比较精炼,而且都是一些Shell学习中容易把握不住的一些细节难点.每一问都写得非常精彩.ChinaUnix ...
- 学习笔记之Shell脚本学习指南 & sed与awk & 正则表达式
正则表达式_百度百科 http://baike.baidu.com/link?url=ybgDrN2WQQKN64_gu-diCqdeDqL8LQ-jiQ-ftzzPaNUa9CmgBRDNnyx50 ...
随机推荐
- 使用electron+Js开发夸平台(Linux、Win、Mac)的桌面应用程序
一.开源地址: https://github.com/electron/electron 二.官方网站: https://electron.atom.io/ 三.案例
- POJ 1548 Robots(最小路径覆盖)
POJ 1548 Robots 题目链接 题意:乍一看还以为是小白上那题dp,事实上不是,就是求一共几个机器人能够覆盖全部路径 思路:最小路径覆盖问题.一个点假设在还有一个点右下方,就建边.然后跑最小 ...
- LeetCode222 Count CompleteTree Nodes(计算全然二叉树的节点数) Java 题解
题目: Given a complete binary tree, count the number of nodes. Definition of a complete binary tree fr ...
- java 判断是否为纯数字
java 判断是否为数字格式 CreateTime--2017年12月1日10:37:00 Author:Marydon java 判断是否为数字格式 /** * 判断是否为数字格式不限制位数 * ...
- 【转】Appium移动自动化测试(三)--安装Android模拟器
原文出自:http://www.cnblogs.com/fnng/p/4560298.html?utm_source=tuicool 当Android SDK安装完成之后,并不意味着已经装好了安装模拟 ...
- PL/SQL Developer 中文乱码问题的解决
分三个步骤解决: 1.检查server编码: 运行SQL语法: select * from v$nls_parameters; 2.设置本地client编码: 进入 ...
- [JavaScript模块演化简史]摘要
来源于:https://zhuanlan.zhihu.com/p/26231889 # JavaScript 模块化 早期的JavaScript并没有模块化解决方案.随着单页应用与富客户端的流行,出现 ...
- Axure快速原型教程01--原型说明下载和安装
Axure是一个快速画原型的工具 什么是原型? 估计进来的朋友应该都清楚,原型通俗来讲,不仅仅是在软件开发中使用,在很多行业中也需要用的,比如服装设计,建筑 ...
- HBase Go客户端Row构造注意事项
1. Hbase 的Go客户端语言使用方法 2. Hbase的Row使用注意事项 2.1. Row的前几个字段尽量散列 2.2. Row的排序是把所有Row中的字符做字典排序 我们最近在一个项目中使用 ...
- 【RS】RankMBPR:Rank-Aware Mutual Bayesian Personalized Ranking for Item Recommendation - RankMBPR:基于排序感知的相互贝叶斯个性化排序的项目推荐
[论文标题]RankMBPR:Rank-Aware Mutual Bayesian Personalized Ranking for Item Recommendation ( WAIM 2016: ...