Postman常用Api

Postman像jmeter一样提供前置处理脚本和后置处理脚本。脚本主要使用JavaScript语法,并内置提供了一些js代码库,提供了一些内置对象和方法。

参考:https://www.getpostman.com/docs/testing_examples

可通过这个链接作为例子进行学习:http://www.getpostman.com/samples/test_data_file.json

  1. 设置环境变量
postman.setEnvironmentVariable("key", "value");
  1. 查询环境变量
postman.getEnvironmentVariable("key");
  1. 设置全局变量
postman.setGlobalVariable("key", "value");
  1. 查询全局变量
postman.getGlobalVariable("key");
  1. 检查Http响应内容是否包含一个字符串
tests["Body matches string"] = responseBody.has("string_you_want_to_search");
  1. 将XML内容转成JSON对象,方便对XML内容进行处理
var jsonObject = xml2Json(responseBody);
  1. 检查Http响应内容是否等于一个字符串
tests["Body is correct"] = responseBody === "response_body_string";
  1. 检查一个JSON值
var data = JSON.parse(responseBody);
tests["Your test name"] = data.value === 100;
  1. 检查一个Http response header是否存在
tests["Content-Type is present"] = postman.getResponseHeader("Content-Type"); //Note: the getResponseHeader() method returns the header value, if it exists.
//这种方式不区分大小写
  1. 检查一个Http response header是否存在(区分大小写)
tests["Content-Type is present"] = responseHeaders.hasOwnProperty("Content-Type");
  1. 对响应时间做断言,如响应时间是否小于200ms
tests["Response time is less than 200ms"] = responseTime < 200;
  1. 对status code进行断言
tests["Status code is 200"] = responseCode.code === 200;
  1. 断言Status messsage是否包含某个字符串
tests["Status code name has string"] = responseCode.name.has("Created");
  1. 断言Status code是否成功
tests["Successful POST request"] = responseCode.code === 200;
  1. 使用TinyValidator框架对
var schema = {
"items": {
"type": "boolean"
}
};
var data1 = [true, false];
var data2 = [true, 123]; tests["Valid Data1"] = tv4.validate(data1, schema);
tests["Valid Data2"] = tv4.validate(data2, schema);
console.log("Validation failed: ", tv4.error);

--

来源我的文章:http://ask.testfan.cn/article/910

Postman编程的更多相关文章

  1. springboot2.0入门(三)----定义编程风格+jackjson使用+postMan测试

    一.RESTFul风格API 1.优点: )看Url就知道要什么资源 )看http method就知道针对资源干什么 )看http status code就知道结果如何 HTTP方法体现对资源的操作: ...

  2. 猫哥网络编程系列:HTTP PEM 万能调试法

    注:本文内容较长且细节较多,建议先收藏再阅读,原文将在 Github 上维护与更新. 在 HTTP 接口开发与调试过程中,我们经常遇到以下类似的问题: 为什么本地环境接口可以调用成功,但放到手机上就跑 ...

  3. 全新 Mac 安装指南(编程篇)(环境变量、Shell 终端、SSH 远程连接)

    注:本文专门用于指导对计算机编程与设计(尤其是互联网产品开发与设计)感兴趣的 Mac 新用户,如何在 Mac OS X 系统上配置开发与上网环境,另有<全新 Mac 安装指南(通用篇)>作 ...

  4. 读《MacTalk&#183;人生元编程》及Mac经常使用软件

    引子 池建强的Blog:http://www.cnblogs.com/chijianqiang/ 用了1年多的黑苹果,是用Windows的思维用UI.用Linux的思维用Shell,折腾的是联想E49 ...

  5. [补] windows C socket编程——大物实验预约

    注 : 心血来潮,想着把这两年没能记录下来的经历,写一波回忆杀.诚然,有些经历十分复杂繁琐,希望能耐下性子,写出好文章来,可惜一时不能全想起来这两年来的种种,就想起来什么便写什么吧. 时间估摸着是大一 ...

  6. 你应该学会的Postman用法

    postman这个神器相信大家都用过,程序员作为非专业的测试人员,非常需要这么一款简单轻量级的restful测试工具,但是不知道你是否知道,postman的强大之处不只是测试一下接口,还有其他非常赞的 ...

  7. 【工具篇】接口测试神器 -- Postman 入门教程

    一.Postman概述 (1)工具介绍 Postman是一个接口测试工具,一款非常流行的API调试工具.在做接口测试的时候,Postman相当于一个客户端,它可以模拟用户发起的各类HTTP请求,将请求 ...

  8. API测试工具SoapUI & Postman对比分析

    本文由葡萄城技术团队于博客园原创并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 最近公司要引入API测试工具,经过调查和了解,最终决定在SoapUI ...

  9. 看到了必须要Mark啊,最全的编程中英文词汇对照汇总(里面有好几个版本的,每个版本从a到d的顺序排列)

    java:  第一章: JDK(Java Development Kit) java开发工具包 JVM(Java Virtual Machine) java虚拟机 Javac  编译命令 java   ...

随机推荐

  1. Tower Defense Game

    Tower Defense Game 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 There is a tower defense game with n level ...

  2. IP组播技术介绍及实现例子

    引 言 近年来,随着Internet的迅速普及和爆炸性发展,在Internet上产生了许多新的应用,其中不少是高带宽的多媒体应用,譬如网 络视频会议.网络音频/视频广播.AOD/VOD.股市行情发布. ...

  3. LED调光,PFM即pulse frequence modulation

    PWM不是唯一的调制方式,可以PWM,也可以PFM,也可以混合调制. PWM即pulse width modulation的缩写,脉冲宽度调制,保持开关周期不变,调节开关导通时间. PFM即pulse ...

  4. iOS js oc相互调用(JavaScriptCore)

    http://blog.csdn.net/lwjok2007/article/details/47058795

  5. Laravel 使用简述

    开始使用laravel 在此之前我们需要修改一些配置: app/config/app.php 文件中的 debug 选项设置为 true (注:开启开发模式,更友好的开发提示:网站运行时则关闭): a ...

  6. iOS开发 调用系统相机和相册

    调用系统相机和相册 (iPad,iPhone)打开相机:(iPad,iPhone)//先设定sourceType为相机,然后判断相机是否可用(ipod)没相机,不可用将sourceType设定为相片库 ...

  7. 使用Cookie记住用户名和密码

    Login.jsp <form name = "f1" method="get" action="servlet/LoginServlet&qu ...

  8. Android布局及属性归总(查询用)

    常见布局 LinearLayout    线性布局        子元素任意,组织成一个单一的水平或垂直行,默认为水平方向TableLayout    表格布局        子元素为<Tabl ...

  9. Django performance

    Reference: https://impythonist.wordpress.com/2016/02/21/building-high-performance-django-systems/ Th ...

  10. Linux_System2

    1.从服务器下载http*.tar.gz源码包,安装到/usr/local/apache目录下,要求安装时指定能够动态加载模块,能够支持地址回写功能,能够使用ssl加密功能../configure — ...