测试代码会在发送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. 使用HttpClient 发送 GET、POST、PUT、Delete请求及文件上传

    package org.caeit.cloud.dev.util; import java.io.File; import java.io.IOException; import java.io.Un ...

  2. swiper中的默认值的属性和作用(小程序交流群:604788754)

    swiper中的重要属性: vertical:属性,控制swiper效果是水平切换滚动,还是垂直切换滚动.如果不设置此属性,默认是水平滚动,如果设置:vertical="true" ...

  3. (C#基础)反射理解

    这个知识点很基础. 代码 using System; using System.Collections.Generic; using System.Linq; using System.Text; n ...

  4. call、apply的应用

    call方法: 语法:call([thisObj[,arg1[, arg2[,   [,.argN]]]]]) 定义:调用一个对象的一个方法,以另一个对象替换当前对象. 说明: call 方法可以用来 ...

  5. matplotlib小示例

    matplotlib 画廊  http://matplotlib.org/gallery.html import numpy as np import matplotlib.pyplot as plt ...

  6. 201621123010《Java程序设计》第13周学习总结

    1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 为你的系统增加网络功能(购物车.图书馆管理.斗地主等)-分组完成 为了让你的系统可以被多个用户通过网 ...

  7. <youcengcibianli>

    #include<stdio.h> #include<stdlib.h> #include<string.h> #define num 100 #define OK ...

  8. select into from和insert into from

    最近在研究oracle function 时发现select into from和insert into from,这样的语句,于是上网查阅资料学习了一下, 原来两种表达式均可以达到复制整个表或表的一 ...

  9. Linux文件系统之Mount流程分析

    转载:原文地址http://www.linuxeye.com/linuxrumen/1121.html 本质上,Ext3 mount的过程实际上是inode被替代的过程.例如,/dev/sdb块设备被 ...

  10. 配置阿里云ECS支持IPv6,解决苹果app审核失败问题

    前几天iOS的App提交给苹果审核没通过,给出的原因是:该应用在 IPv6 的环境下无法使用.检查发现:阿里云优化过的系统没有启用IPv6协议,需要配置启用一下,但是只单独启用IPv6也是无法直接提供 ...