一、预处理

Pre-request Scrip  1、Pre-request Script是集合中请求发送之前需要执行的代码片段

  2、请求参数中包含一个随机数或者请求header中包括一个时间戳,或者你的请求参数需要加密

Pre-request Script常用代码

  右侧提供了一些常用的代码

  

  

二、断言

  postman断言是JavaScript语言编写的,在postman客户端指定区域编写即可。

  断言会在请求返回之后,运行,并根据断言的pass\fail情况体现在最终测试结果中。

  

clear a global variable 清除全局变量 pm.globals.unset("variable_key");
Clear an environment variable 清除环境变量 pm.environment.unset("variable_key");
get a global variable 得到一个全局变量 pm.globals.get("variable_key");
get a variable 得到一个变量 pm.variables.get("variable_key");
Get an environment variable 得到一个环境变量 pm.environment.get("variable_key");
response body:contains string 检查response body包含字符串 pm.test("Body matches string", function () {
    pm.expect(pm.response.text()).to.include("string_you_want_to_search");
});
response body:convert XML body to a JSON object response body:将XML转换为JSON对象 var jsonObject = xml2Json(responseBody);
response body:is equal to a string 检查response body等于指定字符串 pm.test("Body is correct", function () {
    pm.response.to.have.body("response_body_string");
});
response body:JSON value check 检查response body中JSON某字段值 pm.test("Your test name", function () {
    var jsonData = pm.response.json();
    pm.expect(jsonData.value).to.eql(100);
});
response headers:content-Type header check 检查content-Type是否包含在header返回 pm.test("Content-Type is present", function () {
    pm.response.to.have.header("Content-Type");
});
response time is than 200ms 响应时间超过200ms pm.test("Response time is less than 200ms", function () {
    pm.expect(pm.response.responseTime).to.be.below(200);
});
send s request 发送一个请求 pm.sendRequest("https://postman-echo.com/get", function (err, response) {
    console.log(resp  onse.json());
});
set a global variable 设置一个全局变量 pm.globals.set("variable_key", "variable_value");
set an environment variable 设置一个环境变量 pm.environment.set("variable_key", "variable_value");
status code:Code is 200 状态码:代码是200 pm.test("Status code is 200", function () {
    pm.response.to.have.status(200);
});
status code:code name has string 状态码:代码中有指定字符串 pm.test("Status code name has string", function () {
    pm.response.to.have.status("Created");
});
status code:successful POST request 状态码:成功的post请求 pm.test("Successful POST request", function () {
    pm.expect(pm.response.code).to.be.oneOf([201,202]);
});
use tiny validator for JSON data 为json数据使用tiny验证器 var schema = {
  "items": {
    "type": "boolean"
  }
};

var data1 = [true, false];
var data2 = [true, 123];

pm.test('Schema is valid', function() {
  pm.expect(tv4.validate(data1, schema)).to.be.true;
  pm.expect(tv4.validate(data2, schema)).to.be.true;
});

  

postman——预处理和断言的更多相关文章

  1. postman测试实例--断言

    postman测试实例--断言 让我们来看看postman测试的一些例子. 其中大部分是作为内部postman片段. 大多数测试是为单行的JavaScript语句一样简单. 只要你想一个请求,你可以有 ...

  2. postman—Sandbox和断言

    Postman沙盒 Postman Sandbox是一个JavaScript执行环境,您可以在编写预请求脚本和测试脚本(在Postman和Newman中)时可用.在这个沙箱中执行您在预请求/测试脚本部 ...

  3. 4、postman的常见断言

    推荐我的另一篇文章  浅谈JSONObject解析JSON数据,这篇文章原理类似,使用java或者beanshell进行断言解析json数据 介绍断言之前,我们先测试1个接口: 接口地址:https: ...

  4. 『政善治』Postman工具 — 9、在Postman中使用断言

    目录 1.Tests的介绍 2.常用SNIPPETS(片段)说明 (1)常用变量相关 (2)状态码相关 (3)响应结果断言: (4)Header : (5)响应速度: 3.示例 (1)响应码断言 (2 ...

  5. PostMan变量与断言应用(对标Jmeter)

    常见的接口测试工具有PostMan/Jmeter/SoapUI,当然,也有一些公司为了更贴近自身的应用开发了一些小工具. 从功能上对比,Jmeter更为强大,既能做压测还能测接口,扩展性也比较好. B ...

  6. 利用 Postman 中 Tests 断言校验返回结果

    前言 Postman目前是一款很火的接口测试工具,它有着非常强大结果判断能力.为什么说强大呢,因为Postman有自带的校验脚本,根本不需要我们去学习JS脚本语言,对于代码能力为0的各位测试小伙伴来说 ...

  7. Postman(一)、断言

    postman常见断言方法介绍: 1.Clear a global variable (清除一个全局变量)  postman.clearGlobalVariable("variable_ke ...

  8. postman之请求&断言

    http://www.jianshu.com/p/dd0db1b13cfc    ---参考网址 文档:https://www.v2ex.com/p/7v9TEc53 api地址:https://ww ...

  9. Postman中的断言

    Postman设置断言 一.断言的定义 1.什么是断言? 一般一个完整的接口测试,包括:请求->获取响应正文->断言,请求和获取响应正文很常见.断言一般是对请求的响应结果做操作,判断预期结 ...

  10. 【4】Postman之Tests(断言)

    简介:使用postman完成请求后,验证返回结果,会用到tests断言.官方提供了很多可以直接使用的方法~ 接下来主要介绍这些方法是如何使用. 1. 变量相关: Get an environment ...

随机推荐

  1. C++模板介绍

    C++ 模板 C++ 模板是一种强大的泛型编程工具,它允许我们编写通用的代码,可以用于处理多种不同的数据类型.模板允许我们在编写代码时将类型作为参数进行参数化,从而实现代码的重用性和灵活性. 在 C+ ...

  2. 分库表数据倾斜的处理让我联想到了AKF模型

    1 背景 最近在做需求的时候需要在一张表中增加一个字段. 这张表情况如下: 1.拆分了多个库多张表 2.库表拆分按表中商户编码字段hash之后取模进行拆分 由于库表拆分按照商户编码,有些大商家的单子数 ...

  3. vue2原理初探-数据代理和数据劫持

    本篇文章主要想简单聊聊vue如何实现数据修改,页面联动的底层原理. 当然,篇幅有限,只是自己一些浅显的认知而已,我会从一下几个方面去聊,希望对你有所帮助. 几个基础知识点 数据代理 数据劫持 完整de ...

  4. Visual Studio 2022 Preview 3和2019 16.11发布

    Visual Studio 2022 Preview 3 主要特点 个人和团队生产力 附加到进程改进 新项目设计器 黑暗主题提升 开发现代应用 远程测试 新的JavaScript和TypeScript ...

  5. Debian12安装.NET7 SDK

    Debian,作为最受欢迎的 Linux 发行版之一,于 2023 年 6 月 10 日正式发布了其最新版本 Debian 12,代号"Bookworm".Debian 12 带来 ...

  6. 其它——DevOps简介

    文章目录 DevOps简介 DevOps的概念 历史变革 好处是什么? 为什么DevOps会兴起? 实现DevOps需要什么? DevOps的采用现状 DevOps简介 DevOps 是一个完整的面向 ...

  7. Python面向对象——1、什么是异常 2、为何处理异常 3、如何处理异常? 4、何时使用异常处理 网络编程的一些预备知识

    文章目录 异常 1.什么是异常 2.为何处理异常 3.如何处理异常? 4.何时使用异常处理 网络编程的一些预备知识 异常 1.什么是异常 异常是程序发生错误的信号.程序一旦出现错误,便会产生一个异常, ...

  8. 校招零Offer要不要先找实习?

    国庆前后被问到最多的问题是:"磊哥,我现在还是 0 Offer,要不要先去找个实习?",给大家看看部分截图. 同学 A: 同学 B: 同学 C: 其他还有一些截图,我这里就不一一贴 ...

  9. 小提琴图的绘制方法:Python matplotlib实现

      本文介绍基于Python中matplotlib模块与seaborn模块,利用多个列表中的数据,绘制小提琴图(Violin Plot)的方法.   小提琴图作为一种将箱型图与核密度图分别所能表达的信 ...

  10. 20.1 OpenSSL 字符BASE64压缩算法

    OpenSSL 是一种开源的加密库,提供了一组用于加密和解密数据.验证数字证书以及实现各种安全协议的函数和工具.它可以用于创建和管理公钥和私钥.数字证书和其他安全凭据,还支持SSL/TLS.SSH.S ...