测试代码会在发送request并且接收到responses后执行。

  • 1.设置环境变量 postman.setEnvironmentVariable("key", "value");
  • 2.设置全局变量 postman.setGlobalVariable("key", "value");
  • 3.检查response body中是否包含某个string tests["Body matches string"] =responseBody.has
    ("string_you_want_to_search");
  • 4.检测JSON中的某个值是否等于预期的值
    var data = JSON.parse(responseBody);tests["Your test name"] = data.value === 100;
    JSON.parse()方法,把json字符串转化为对象。parse()会进行json格式的检查是一个安全的函数。 如:检查json中某个数组元素的个数(这里检测programs的长度)
    var data = JSON.parse(responseBody);tests["program's lenght"] = data.programs.length === 5;
  • 5.转换XML body为JSON对象 var jsonObject = xml2Json(responseBody);
  • 6.检查response body是否与某个string相等 tests["Body is correct"] = responseBody === "response_body_string";
  • 7.测试response Headers中的某个元素是否存在(如:Content-Type)
    tests["Content-Type is present"] = postman.getResponseHeader("Content-Type"); //getResponseHeader()方法会返回header的值,如果该值存在
    或者:
    tests["Content-Type is present"] = responseHeaders.hasOwnProperty("Content-Type");

    上面的方法,不区分大小写。下面的方法,要区分大小写。

     
  • 8.验证Status code的值 tests["Status code is 200"] = responseCode.code === 200;
  • 9.验证Response time是否小于某个值 tests["Response time is less than 200ms"] = responseTime < 200;
  • 10.name是否包含某个值 tests["Status code name has string"] = responseCode.name.has("Created");
  • 11.POST 请求的状态响应码是否是某个值 tests["Successful POST request"] = responseCode.code === 201 || responseCode.code === 202;
  • 12.很小的JSON数据验证器
    var schema = { "items": { "type": "boolean" }};var data1 = [true, false];var data2 = [true, 123];console.log(tv4.error);tests["Valid Data1"] = tv4.validate(data1, schema);tests["Valid Data2"] = tv4.validate(data2, schema);

    结果:


作者:古佛青灯度流年
链接:http://www.jianshu.com/p/35678284ce78
來源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

postman的Testing examples(测试脚本示例)的更多相关文章

  1. postman的Testing examples(常用方法)

    在实现接口自动测试的时候,会经常遇到接口参数依赖的问题,例如调取登录接口的时候,需要先获取登录的key值,而每次请求返回的key值又是不一样的,那么这种情况下,要实现接口的自动化,就要用到postma ...

  2. Postman—测试脚本

    前言 对于Postman中的每个请求,我们都可以使用JavaScript语言来开发测试脚本.这也就好比单元测试.我们先看看Postman的相关界面: 编写测试脚本 Postman测试脚本本质上是在发送 ...

  3. postman常用测试脚本

    测试脚本: 设置环境变量 var jsonData = JSON.parse(responseBody); postman.setGlobalVariable("5KMST", j ...

  4. 使用 postman 给 API 写测试

    使用 postman 给 API 写测试 Intro 上次我们简单介绍了 使用 postman 测试 API,这次主要来写一些测试用例以检查请求的响应是否符合我们的预期以及如何使用脚本测试 使用 po ...

  5. 如何使用Postman生成不同格式测试的报告

    Postman还可以生成测试报告,还是多种格式报告? Postman团队开源Newman作为Postman运营工具,该开源库使用命令行方式执行Postman 脚本,并且生成多种格式报告,还支持Post ...

  6. JMeter-使用Badboy录制Web测试脚本

    JMeter是纯Java编写的软件功能和性.能测试工具,其录制脚本过于笨拙和复杂.而Badboy是用C++开发的动态应用测试工具,其拥有强大的屏幕录制和回放功能,同时提供图形结果分析功能,刚好弥补了J ...

  7. Jmeter-maven-plugin高级配置之选择测试脚本(转)

    Posted on 2014 年 6 月 6 日 在pom.xml文件中可以指定运行哪些jmx脚本. 运行所有的测试脚本 Jmeter默认运行${project.base.directory}/src ...

  8. 【jmeter】jMeter使用Badboy录制Web测试脚本

    JMeter 是纯Java编写的软件功能和性.能测试工具,其录制脚本过于笨拙和复杂.而Badboy是用C++开发的动态应用测试工具,其拥有强大的屏幕录制和回放 功能,同时提供图形结果分析功能,刚好弥补 ...

  9. 记录项目代码迁移后,UI测试框架的搭建(配置文件的修改、测试脚本试运行)

    前文:记录一次项目代码迁移过程 上文代码迁移的目的就是为了新增vue脚手架自带的UI测试框架,工具有了,就需要实践运行在项目中了(修改配置文件.编写测试脚本等). 一.单元测试 测试框架 karma ...

随机推荐

  1. drawImage

    <!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head>    < ...

  2. React路由配置使用

    Router包安装: 安装包还是要打开命令行工具,使用npm来进行安装. npm install --save react-router react-router-dom 页面login: impor ...

  3. UVALive 6322 最大匹配...

    /* *e...大概明白了.首先用最大匹配看看是不是存在符合题意的匹配.然后呢.对枚举找到每个位置符合的字母里最小的那个. *判断是否能构成最大匹配.直到找完最后一个位置输出就好了.. *还是有些不理 ...

  4. POJ 1128 拓扑排序 + 深搜

    /* (⊙v⊙)嗯 貌似是一个建图 拓扑+深搜的过程.至于为什么要深搜嘛..一个月前敲得题现在全部推了重敲,于是明白了.因为题意要求如果有多个可能的解的话. * 就要输出字典序最小的那个.所以可以对2 ...

  5. TypeScript安装

    1.Installing Node.js and updating npm Updating npm----npm install npm@latest -g Installing TypeScrip ...

  6. SQL Server 调优系列进阶篇 - 如何重建数据库索引

    随着数据的数据量的急剧增加,数据库的性能也会明显的有些缓慢这个时候你可以考虑下重建索引或是重新组织索引了. DBCC SHOWCONTIG('表名') 可以查看当前表的索引碎情况. 重建索引 方法一: ...

  7. 15 int *ptr= (int *)(&a+1)跨了整个数组长度

    分析以下程序,输出结果 2,5 #include<stdio.h> int main() { ]={,,,,}; ); printf(),*(ptr-)); ; } 分析: a 代表的是i ...

  8. DBGRID 拖动滚动条 和 鼠标滚轮的问题

    滚动条拖动问题 默认是,拖动时,网格内数据不变,等放开鼠标后才会变. 方法 拖动时同时变,当前记录也变,不用新控件 http://wenwen.sogou.com/z/q185291591.htm 鼠 ...

  9. pyqt(二) 创建第一个程序(helloworld)解决object has no attribute 'setCentralWidget'

    1.运行Qt Creator QtCreator主界面分为了6个模式:欢迎模式.编辑模式.设计模式.Debug调试模式.项目模式和帮助模式,分别由左侧的6个图标进行切换,对应的快捷键是Ctrl + 数 ...

  10. 量身打造自己的MyEclipse(多图)

    迎新年 贺元旦MyEclipse推新版 在线订购低至 7.5 折!截止1月31号(活动期间在线下单的客户才可享受此优惠,过期恢复原价) 立即抢购 1.量身打造你自己的MyEclipse MyEclip ...