精华内容
下载资源
问答
  • postman断言详解

    千次阅读 2019-11-14 10:43:32
    Postman断言 一个完整的接口测试,包括:请求——>获取相应正文——>断言,我们已经知道了请求与获取响应正文,下面来介绍如何用postman进行断言 Tests 这个“Tests”就是我们需要处理断言的地方,postman...

    Postman断言
    一个完整的接口测试,包括:请求——>获取相应正文——>断言,我们已经知道了请求与获取响应正文,下面来介绍如何用postman进行断言
    在这里插入图片描述Tests
    这个“Tests”就是我们需要处理断言的地方,postman很人性化的帮我们把断言所用的函数全给准备好了
    在这里插入图片描述SNIPPETS
    举例说明:首先设置一个断言场景,根据断言场景来举例说明postman断言如何使用。

    1. 判断HTTP返回状态码为200
    2. 判断响应正文中是否包含:“statusCode”:200
    3. 解析响应正文,并判断statusCode的值是200,message的值是”Success“

    第一步:在SNIPPETS中,往下拉,有一项“Status code:Code is 200”,这个就是问场景中的第一条准备的,判断HTTP返回状态码是否为200.点击这一项,可以看到在其左边,断言代码自动添加,见下图
    在这里插入图片描述Status code
    第二步同样在SNIPPETS中找到一项“Response body:Contains string",这个就是为场景中的第二条准备的,判断响应正文中的字段。点击后,在其左边,断言自动添加,见下图
    在这里插入图片描述
    第三步:我们需要解析json串了,所以,在SNIPPETS中找到"Response body:value check"并点击在其左边,断言代码自动添加
    在这里插入图片描述

    展开全文
  • 【4】PostmanTests(断言)

    千次阅读 2019-12-04 09:27:16
    简介:使用postman完成请求后,验证返回结果,会用到tests断言。官方提供了很多可以直接使用的方法~ 接下来主要介绍这些方法是如何使用。 1.变量相关: Get an environment variable获取一个环境变量 Get a ...

    简介:使用postman完成请求后,验证返回结果,会用到tests断言。官方提供了很多可以直接使用的方法~

    接下来主要介绍这些方法是如何使用。

    1. 变量相关:

    • Get an environment variable 获取一个环境变量
    • Get a gloval variable 获取一个全局变量
    • Get a variable 获取一个变量
    • Set an environment variable 设置一个环境
    • Set a global variable 设置一个全局变量
    • Clear an environment variable  清空一个环境变量
    • Clear a global variable  清空一个全局变量  

    使用:

    • 获取变量:如果在下一个请求中用到上一个请求的返回值,可以使用“设置一个全局变量”将请求的返回值设置为全局变量后,在下一个请求中,使用“获取一个全局变量”取到该值。
    • 清空变量:这里的清空等译删除变量,一个参数使用完成后,需要删除,或者清空值都可以使用该方法。

    2.状态码

    • Status code: Code is 200 判断状态码是否正确;默认判断状态是否为 200, 可修改;
    • Status code:Successful POST request
      判断状态码是否为预期结果之一;比如默认断言状态码是否是 201, 202 中的一个;
    • Status code:Code name has string
      判断状态码描述是否包含字符串,比如是否包含 Created;

    3. 响应结果断言:

    • Response body: Contains string 响应结果是否包含字符串;
    • Response body: JSON value check 响应结果如果是 JSON,检查具体的 JSON 值;
    • Response body: Is equal to a string 响应结果与字符串是否全部匹配预期的字符串;
    • Response body: Convert XML body to a JSON Object
      将 XML 转换成 JSON;

    4. Header :

    • Response headers:Content-Type header check
      响应头部中是否包含字段;

    5. 响应速度:

    • Response time is less than 200ms
      响应时间是否少于多少 ms。

    例如:

    请求的响应为json格式:

    {

        "code": 200,

        "message": "添加成功",

        "id": "d794bed4-73ae-4756-bf11-3e7ebbdd43db",

    }

    tests中验证:

    • //将结果转换为json字符串

    var jsonData = pm.response.json();

    • //验证code为200

    pm.test("Status code is 200", function () {
        pm.response.to.have.status(200);
    }); 

    •  //验证message为:添加成功

    pm.test("添加成功", function () {
        pm.expect(jsonData.message).to.eql("添加成功");
    });

    备注:在验证json中的内容时,我这个是简单的object类型的,如果涉及到数组,要逐级验证,定位到具体的值。例如:

               jsonData.biz_data[0]._id.value (数组使用[],object可以直接使用点)

    • //id是我之后要用到的值,所以将其设置为全局变量

           pm.globals.set("id", jsonData.id);

     

    在线求助:

    jsonpath是否支持在postman中使用,

    展开全文
  • Postman系列之Tests断言

    2020-03-30 07:30:00
    以下,主要介绍如何用PostmanTests这个模块进行断言,包括Tests断言原理介绍、常用断言方法以及Tests断言实例。 一 Tests断言介绍 1 简介 一个完整的接口测试,包括:请求>获取响应正文>断言。所谓断言,就是结果...

    ——————·今天距2021年276天·——————

    这是ITester软件测试小栈第104次推文

    在上一篇:Collections集合管理主要介绍了如何新建Collections、新建Folder以及运行Collections。

    以下,主要介绍如何用Postman的Tests这个模块进行断言,包括Tests断言原理介绍、常用断言方法以及Tests断言实例。

    Tests断言介绍

    1

    简介

    一个完整的接口测试,包括:请求>获取响应正文>断言。所谓断言,就是结果和预期对比,如果一致,则用例通过,如果不一致,断言失败,用例执行失败。

    2

    原理

    Postman中的断言通过JavaScript语言编写,在Tests下方给出可以选择的一些断言内容,断言会在请求返回之后显示,并根据断言的PASSFail情况体现在最终测试结果中。

    3

    常用断言方法

    Setting an environment variable  :设置一个环境变量

    pm.environment.set("variable_key", "variable_value");
    

    Setting a nested object as an environment variable : 将嵌套对象设置为环境变量

    var array = [1, 2, 3, 4];
    pm.environment.set("array", JSON.stringify(array, null, 2));
     
    var obj = { a: [1, 2, 3, 4], b: { c: 'val' } };
    pm.environment.set("obj", JSON.stringify(obj));
    

    Getting an environment variable : 获取环境变量

    pm.environment.get("variable_key");
    

    Getting an environment variable (whose value is a stringified object)   :获取一个环境变量,其值是一个字符串化的对象

    // These statements should be wrapped in a try-catch block if the data is coming from an unknown source.
     
    var array = JSON.parse(pm.environment.get("array"));
    var obj = JSON.parse(pm.environment.get("obj"));
    

    Clear an environment variable : 清除一个环境变量

    pm.environment.unset("variable_key");
    

    Set a global variable :设置一个全局变量

    pm.globals.set("variable_key", "variable_value");
    

    Get a global variable :获取一个全局变量

    pm.globals.get("variable_key");
    

    Clear a global variable : 清除全局变量

    pm.globals.unset("variable_key");
    

    Get a variable : 获取一个变量

    pm.variables.get("variable_key");
    

    Check if response body contains a string : 检查响应主体是否包含字符串

    pm.test("Body matches string", function () {
        pm.expect(pm.response.text()).to.include("string_you_want_to_search");
    });
    

    Check if response body is equal to a string :检查响应主体是否等于一个字符串

    pm.test("Body is correct", function () {
        pm.response.to.have.body("response_body_string");
    });
    

    Check for a JSON value :检查JSON值

    pm.test("Your test name", function () {
        var jsonData = pm.response.json();
        pm.expect(jsonData.value).to.eql(100);
    });
    

    Content-Type is present :内容类型存在

    pm.test("Content-Type is present", function () {
        pm.response.to.have.header("Content-Type");
    });
    

    Response time is less than 200ms :响应时间小于200ms

    pm.test("Response time is less than 200ms", function () {
        pm.expect(pm.response.responseTime).to.be.below(200);
    });
    

    Status code is 200 :状态码是200

    pm.test("Status code is 200", function () {
        pm.response.to.have.status(200);
    });
    

    Code name contains a string :代码名称包含一个字符串

    pm.test("Status code name has string", function () {
        pm.response.to.have.status("Created");
    });
    

    Successful POST request status code : 成功的POST请求状态码

    pm.test("Successful POST request", function () {
        pm.expect(pm.response.code).to.be.oneOf([201,202]);
    });
    

    Send an asynchronous request :发送异步请求

    pm.sendRequest("https://postman-echo.com/get", function (err, response) {
        console.log(response.json());
    });
    

    Convert XML body to a JSON object :将XML正文转换为JSON对象

    var jsonObject = xml2Json(responseBody);
    

    Tests断言实例

    1

    环境准备

    接口地址:https://www.v2ex.com/api/nodes/show.json?name=python

    • Method: GET

    • Authentication: None

    2

    场景

    1.状态码等于200;

    2.断言 id=90;

    3.url = "http://www.v2ex.com/go/python";

    3

    示例

    1.在SNIPPETS中,找到"status code:Code is 200",此断言方法即判断HTTP状态码是否为200,点击此断言方法,断言代码自动添加至Tests下。

    2.依次添加其他断言条件,点击Send发送请求。

    断言条件:

    pm.test("Status code is 200", function () {
        //断言状态码是否为200
        pm.response.to.have.status(200);
    });
    
    
    var jsonData = JSON.parse(responseBody);
    
     //断言id是90
    tests["Check respose id value"] = jsonData.id === 90;
     
     //断言url
    tests["Check respose url value"] = jsonData.url === "https://www.v2ex.com/go/python";
    

    如图所示:

    3.查看断言结果,在响应区内可以看TestResults一共有3个断言;如下所示,3个断言全部通过。

    以上


    That‘s all

    更多Postman系列文章

    敬请期待

    ITester软件测试小栈

    往期内容宠幸

    叮—这有一打让你666的测试终极资料包,请查收!

    PyCharm2020年最新永久激活锦囊

    QQ空间面试题放送,速度教科书式扑街补救offer!

    金九银十加薪季,测试题预热一波

    Selenium系列文章汇总

    Fiddler基本使用

    Fiddler抓包介绍

    速看,APP测试之ADB最全指南!

    APP测试之Monkey压力测试(一)

    APP测试之Monkey压力测试(二)

    Python接口自动化-接口基础(一)

    Python接口自动化-接口基础(二)

    Postman系列之安装及简介

    快来星标 置顶 关注我

     后台 回复资源取干货

    回复答题挑战玩转答题

    回复2020与我共同成长

    想要获取相关资料和软件 ?

    测试交流Q群:727998947

    点亮一下小花花,我就知道你“在看”

    展开全文
  • Postmantests断言

    2020-08-04 14:58:27
    1.断言的几种方式: -===============================================================================- 2.例子: 包含某个字符串 检验是否等于某个“整个”字符串 检验某个字段是否等于某个值(通常使用较多...

    1.断言的几种方式:
    在这里插入图片描述
    -===============================================================================-

    2.例子:
    包含某个字符串
    在这里插入图片描述

    检验是否等于某个“整个”字符串
    在这里插入图片描述

    检验某个字段是否等于某个值(通常使用较多的方法)
    在这里插入图片描述

    检验响应头是否包含某个值
    在这里插入图片描述

    检验响应时间
    在这里插入图片描述

    检验响应状态码(通常使用较多的方法)
    在这里插入图片描述

    展开全文
  • Postman断言内容详解

    千次阅读 2019-07-24 11:07:06
    postman断言是JavaScript语言编写的,在postman客户端指定区域编写即可。 1.设置环境变量--Setting an environment variable postman.setEnvironmentVariable("key", "value"); 2.设置全局变量--Set a global ...
  • 一、postman断言 1.首先我们要知道断言的作用,无非就是检验响应码、响应数据中的返回码、body中的关键数据与我们的接口文档相对应,就能校验我们的接口是否完善,在多种无误请求情况下,能做出正确的响应。 2....
  • Postmna 就提供了这个功能,我们可以使用 JavaScript 为 Postman API 请求编写 Tests 脚本。 那么我们以登录的接口为例 接口响应的数据为: { "code": 200, "data": { "firstLogin": true, "token": "b2d08847c...
  • Postman—添加断言和检查点

    千次阅读 2019-10-05 05:48:18
    postman断言是JavaScript语言编写的,在postman客户端指定区域编写即可。 断言会在请求返回之后,运行,并根据断言的pass\fail情况体现在最终测试结果中。 一、断言步骤 1、打开保存的postman完成的访问百度...
  • postman断言解析

    千次阅读 2016-07-29 18:10:59
    postman断言是JavaScript语言编写的,在postman客户端指定区域编写即可。 断言会在请求返回之后,运行,并根据断言的pass\fail情况体现在最终测试结果中。   1.设置环境变量--Setting an environment ...
  • Postman接口测试 详解

    千次阅读 2020-07-14 00:25:20
    postman接口测试(一般在功能测试开展之前) 1.postman简介 postman是网页调试与发送网页http请求的Chrome插件 2.接口分类 2.1程序内部的接口 方法与方法、模块与模块间的交互 2.2程序对外的接口 3.常见接口 3.1...
  • Postman常用功能详解

    万次阅读 多人点赞 2018-07-22 14:28:56
      1. 基本功能介绍  网上有很多介绍基本功能文章,大家可以自己找来看看,下面是我觉得比较好的一篇 ...2.Postman工作原理  在使用一款工具前,了解它的工作原理才能让你更快更有效的上手。我们知道对于一...
  • postman工具使用方案详解

    千次阅读 2019-08-27 10:10:42
    Postman背景介绍 用户在开发或者调试网络程序或者是网页B/S模式的程序的时候是需要一些方法来跟踪网页请求的,用户可以使用一些网络的监视工具比如著名的Firebug等网页调试工具。今天给大家介绍的这款网页调试工具...
  • Postman使用详解

    2018-10-19 14:41:40
    Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件。   一、get请求 GET请求:点击Params,输入参数及value,可输入多个,即时显示在URL链接上,所以,GET请求的请求头与请求参数如在接口文档中无...
  • Postman背景介绍 用户在开发或者调试网络程序或者是网页B/S模式的程序的时候是需要一些方法来跟踪网页请求的,用户可以使用一些网络的监视工具比如著名的Firebug等网页调试工具。今天给大家介绍的这款网页调试工具...
  • Postman入门详解

    2018-06-06 17:22:55
    Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件。 接口请求流程 一、get请求 GET请求:点击Params,输入参数及value,可输入多个,即时显示在URL链接上,所以,GET请求的请求头与请求参数...
  • postman使用详解

    2018-10-26 17:54:32
    Postman使用详解 前言: Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件。 接口请求流程 一、get请求 GET请求:点击Params,输入参数及value,可输入多个,即时显示在URL链接上...
  • postman是一款支持http协议的接口调试与测试工具,其主要特点就是功能强大,使用简单且易用性好 。无论是开发人员进行接口调试,还是测试人员做接口测试,postman都是我们的首选工具...
  • postman 使用详解

    2018-08-30 17:49:35
    Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件。 接口请求流程 一、get请求 GET请求:点击Params,输入参数及value,可输入多个,即时显示在URL链接上,所以,GET请求的请求头与请求参数如在...

空空如也

空空如也

1 2 3 4 5 6
收藏数 114
精华内容 45
关键字:

postman断言tests详解