接口测试--Postman常用断言

Postman的断言是用javascript语言写的

引入--什么是断言

结果中的特定属性或值与预期做对比,如果一致,则用例通过,如果不一致,断言失败,用例失败。断言,是一个完整测试用例所不可或缺的一部分,没有断言的测试用例仅仅是测试步骤。

1.断言状态码--Status codeCode is 200

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

 解释:

  1. pm是一个全局对象,代表了postman运行时的环境,并且他提供了一些列内置的方法和属性
  2. test是postman封装的一个方法,pm.test()用于创建并定义一个测试用例,它接受两个参数:测试用例的描述(作为字符串)和一个回调函数(用于编写测试逻辑)
  3. "Status code is 200"是字符串,用于描述该测试用例的名称.它并不是固定的写法,而是可以根据具体需求自定义的
  4. function()是一个匿名函数(也叫回调函数),作为参数传递给pm.test()
  5. pm.respose对象访问测试请求的响应,并使用.to.have.stasus(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");
});
  1. pm.response.text()是一个内置方法,.response获取API接口响应的内容,.text()转换获取的内容为文本形式
  2. pm.expect():断言方法,用于断言特定的条件是否正确
  3. .to.include("string"):断言条件,检查钱买你获取的响应是否包含指定的字符串.真通过,假不通过

3.断言Json数据--Response body: JSON value Check

pm.test("Your test name", function () {var jsonData = pm.response.json();pm.expect(jsonData.value).to.eql(100);
});
  1. pm.response.json()是一个内置方法,.response获取API接口响应的内容,.json()转换获取的内容为json格式
  2. var jsonData:声明一个jsonData变量,用于接收返回的json格式数据
  3. .to.eql():比较实际值和预期值,相同则通过,不同则不通过

4.断言响应头--Response headers: Content-Type header check

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

1.对响应头里中的值(header)进行判断,是否包含对应的属性 

5.断言响应时间/速度--Response time is less than 200ms

pm.test("验证响应时间小于200ms", function () {pm.expect(pm.response.responseTime).to.be.below(200);
});

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/89693.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux系统上使用SQLite

1. 安装SQLite 在Linux上安装SQLite非常简单。可以使用包管理器(如apt、yum)直接从官方软件源安装SQLite。例如,在Ubuntu上使用以下命令安装SQLite: sudo apt-get install sqlite32. 打开或创建数据库 要打开或创建一个SQLite数…

5月22日比特币披萨日,今天你吃披萨了吗?

比特币披萨日 1. Laszlo Hanyecz2. 最贵披萨诞生记3. 梭哈买披萨4. 未完待续 2010年5月22日,美国佛罗里达州的程序员Laszlo Hanyecz(拉兹洛哈涅克斯)用10000个比特币购买了棒约翰(Papa Johns)比萨店一个价值25美元的奶…

什么人适合学NPDP产品经理认证?

NPDP产品经理认证,最适合学的就是产品经理了,但是证书没有局限性,适用于所有与产品开发相关的行业和领域,特别是那些需要提高产品成功率和效率的团队成员。就是一句话,只要你觉得有用,都可以考。 通过学习N…

Softing物联网(IoT)方案之OT/IT数据集成

一 利用数据提高效率和绩效 多年以来数据集成和工业物联网一直在推动着市场的发展,目前我们已经能够集成并成功使用先进的技术、大量的传感器和复杂的数据格式等。而在工业物联网或工业4.0中,还有运营技术(OT)和信息技术&#xf…

Video Caption / 视频字幕:常用指标(BELU-4,ROUGE-L,METEOR,CIDEr,SPICE)和数据集总结

本文作为入门Video Caption / 视频字幕 的随笔记录,用于查漏补缺和回顾,难免有疏漏和不足指出,烦请指出! 一、指标 Video Caption / 视频字幕常用的标准指标有四种:BLEU-1[1],BLEU-2[1],BLEU-3[…

LeetCode算法二叉树—LCR 194. 二叉树的最近公共祖先

目录 LCR 194. 二叉树的最近公共祖先 - 力扣(LeetCode) 代码: 运行结果: 给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。 百度百科中最近公共祖先的定义为:“对于有根树 T 的两个结点 p、q,最…

realloc函数应用IO泄露体验

本题主要介绍realloc函数,平时我们使用realloc最多便是在打malloc_hook–>onegadget的时候,使用realloc_hook调整onegadget的栈帧,从而getshell。 在realloc函数中,也能像malloc一样创建堆,并且比malloc麻烦一些&a…

计算机,软件工程,网络工程,大数据专业毕业设计选题有哪些(附源码获取)

计算机,软件工程,网络工程,大数据专业毕业设计选题有哪些?(附源码获取) ✌全网粉丝20W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于J…

Linux(CentOS/Ubuntu)——安装nginx

如果确定你的系统是基于CentOS或RHEL,可以使用以下命令: ①、安装库文件 #安装gcc yum install gcc-c#安装PCRE pcre-devel yum install -y pcre pcre-devel#安装zlib yum install -y zlib zlib-devel#安装Open SSL yum install -y openssl openssl-de…

讯飞星火认知大模型Java后端接口

文章目录 1.免费申请星火大模型套餐2.Java后端接口说明2.1 项目地址2.2 项目说明2.3 项目结构2.4 项目代码🍀 maven 依赖🍀 application.yml 配置文件🍀 config 包📌 XfXhConfig 🍀 dto 包📌 MsgDTO&#x…

Windows系统如何临时关闭“Windows安全中心实时保护”

前言 启动windows depender实时保护可能会使系统不太流畅,也可能会导致我们的程序无法正常运行,因为它会拦截或搜索我们的正常工作。 暂时关闭windows depender的实时保护对许多用户来说非常重要。 一、Win10系统关闭方法 打开Windows安全中心&#…

油封的两种主要类型?

油封也称为轴封,是各类机械中不可或缺的部件。它们主要用于密封机械设备中固定部件和移动部件之间的开口。大多数应用中较常用的油封是橡胶壳油封或金属壳油封。 橡胶壳油封广泛用于存在金属壳油封因热膨胀而失效的风险的应用中。橡胶外壳油封不会生锈,…

mac docker部署hadoop集群

1. 安装docker 确保电脑已经安装docker docker安装过程可自行查找资料,mac下docker可以使用brew命令安装 安装之后,查看docker版本,确认安装成功 docker -v2. 下载jdk 最好下载jdk-8,jdk的版本过高可能hadoop2.x不支持jdk-8的下…

【力扣每日一题】2023.9.27 餐厅过滤器

目录 题目: 示例: 分析: 代码: 题目: 示例: 分析: 题目挺长,估计中等难度是给在了阅读理解上。 简单来说就是给我们一堆餐厅的信息,每个餐厅拥有五个属性&#xff…

虹科Pico汽车示波器诚邀您加入精准诊断时代,助您成为修车大师!

虹科Pico汽车示波器的口号是: 面向未来诊断,定义精准时代 淘汰人的是工具从来不是年龄!虹科Pico汽车示波器能够让您掌握现代的诊断工具,让您更高效的诊断故障原因。 我们有专业的设备与优质的技术服务!让每个用户自…

LeetCode每日一题:2251. 花期内花的数目(2023.9.28 C++)

目录 2251. 花期内花的数目 题目描述: 实现代码与解析: 离散化差分 原理思路: 2251. 花期内花的数目 题目描述: 给你一个下标从 0 开始的二维整数数组 flowers ,其中 flowers[i] [starti, endi] 表示第 i 朵花的…

1.centos7 安装显卡驱动、cuda、cudnn

安装conda 参考 python包 2.安装conda python库-CSDN博客3.Cenots Swin-Transformer-Object-Detection环境配置-CSDN博客 1.安装显卡驱动 步骤1:安装依赖 yum -y install kernel-devel yum -y install epel-release yum -y install gcc 步骤2:查询显…

[滴水逆向]03-12 pe头字段说明课后作业,输出pe结构

#include <iostream> #include <windows.h> using namespace std; #pragma warning(disable:4996) //DOC结构 typedef struct _DOC_HEADER {WORD e_magic;WORD e_cblp;WORD e_cp;WORD e_crlc;WORD e_cparhar;WORD e_minalloc;WORD e_maxalloc;WORD e_ss;WO…

CentOS 7下载安装MySQL 5.7以及连接虚拟机CentOS 7数据库教程

## CentOS 7下载安装MySQL 5.7以及连接虚拟机CentOS 7数据库教程 文章目录 ## [CentOS 7下载安装MySQL 5.7以及连接虚拟机CentOS 7数据库教程](https://my.oschina.net/u/3986411/blog/4714780) 通过如下命令查看mariadb的安装包 rpm -qa | grep mariadb通过如下命令卸载mariad…

Java基础简单整理

文章目录 Java语言具有以下特点&#xff1a;Java SE vs Java EEJVM vs JDK vs JRE为什么说 Java 语言编译与解释并存&#xff1f;Java 和 C 的区别?Java注释用法&#xff1a;Java标识符Java基本数据类型链接Java字符串类型链接基本类型和包装类型的区别&#xff1f;静态方法为…