postman中Test断言介绍

Test断言

  • 一,常用断言:
    • [1)Status code:Code is 200 检查返回的状态码是否为200](#1)Status code:Code is 200 检查返回的状态码是否为200)
    • [2)Response body:Contains string 检查响应中包括指定字符串](#2)Response body:Contains string 检查响应中包括指定字符串)
    • [3)Response body:Json value check 检查响应中其中json的值](#3)Response body:Json value check 检查响应中其中json的值)
    • [4)Response body:is equal to a string 检查响应等于一个字符串](#4)Response body:is equal to a string 检查响应等于一个字符串)
    • [5)Response headers:Content-Type...检查是否包含响应头Content-Type](#5)Response headers:Content-Type...检查是否包含响应头Content-Type)
    • [6)Response time is less than 200ms:检查请求耗时小于200ms](#6)Response time is less than 200ms:检查请求耗时小于200ms)
    • [7)Status code :Successfull POST request :判断post请求的状态码,是不是在201和202这两个之中](#7)Status code :Successfull POST request :判断post请求的状态码,是不是在201和202这两个之中)
  • 二,使用参数

一,常用断言:

前4种最常用

1)Status code:Code is 200 检查返回的状态码是否为200

2)Response body:Contains string 检查响应中包括指定字符串

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

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

3)Response body:Json value check 检查响应中其中json的值

复制代码
// pm.test("Your test name", function () {
//     var jsonData = pm.response.json();
//     pm.expect(jsonData.value).to.eql(100);
// });
pm.test("Your test name", function () {
    var jsonData = pm.response.json();
    pm.expect(jsonData.list[0]).to.eql("第一个数");
});

4)Response body:is equal to a string 检查响应等于一个字符串

response_body_string处填写的内容要和接口返回的内容完全一致才可以匹配成功

复制代码
// pm.test("Body is correct", function () {
//     pm.response.to.have.body("response_body_string");
// });

5)Response headers:Content-Type...检查是否包含响应头Content-Type

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

6)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);
});

7)Status code :Successfull POST request :判断post请求的状态码,是不是在201和202这两个之中

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

二,使用参数

global全局参数

断言使用参数

Postman内置动态参数和自定义的动态参数以及断言方式

复制代码
   {{$timestamp}}  生成当前时间的时间戳。

   {{$randomInt}}  生成0-1000之间的随机数

   {{$guid}}           生成速记GUID字符串
相关推荐
花间相见4 天前
【计算基础|网络04】—— HTTP接口实战(下):接口测试、鉴权与跨域排错
java·linux·人工智能·后端·python·计算机网络·postman
霍格沃兹测试学院-小舟畅学5 天前
UI 测试的语义断言:Midscene aiAssert 比像素比对稳在哪、又会骗在哪
人工智能·测试工具
zuozewei5 天前
附录 A:主流工具对比选型表
人工智能·测试工具
我的xiaodoujiao5 天前
Django 基础知识详细图文教程 10-Django 模板引擎 3
后端·python·测试工具·django
霍格沃兹测试学院-小舟畅学5 天前
Google 开源 ARTEMIS:AI Agent 如何接管 Android 真机测试?
人工智能·测试工具
Liaiyang665 天前
# 自研 AST 容错初筛工具:横向评测 Django、PyTorch、TensorFlow 三大开源 Python 框架异常收容风险
python·测试工具·自动化·开源软件·代码规范·devops·代码复审
霍格沃兹测试学院-小舟畅学5 天前
我用 AI 把 Swagger 变成 500 条 pytest 用例,回归从 3 天到 3 小时
人工智能·测试工具
奔跑中的小象6 天前
GuideLLM 压测实战指南:给大模型推理服务做一次完整 SLA 评估
测试工具·guidellm
liulilittle6 天前
麻将结算全链路语义(SETTLE_SEMANTICS)
ai·自动化·llm·mock·lua·测试
Madison-No76 天前
基于JMeter工具的性能测试(接口)
python·jmeter·postman