Postman中断言!

news2024/11/16 11:36:52

用例管理

1.在测试活动中, 针对需求和接⼝⽂档进⾏⽤例设计时, 我们会发现针对⼀个需求或⼀个接⼝要考虑多种 情况, 设计的⽤例要尽量覆盖需求. 在接⼝测试中, 如果使⽤

⼯具(postman, Jmeter)实现, 需要对⽤例进⾏ 管理。

1

2

3

1.创建项目(系统)点击Nes Collection

2.创建目录Add Folder

3.添加请求Add Request

   (1).创建测试集- 点击‘New Collection’,在弹出框中输⼊测试集的名称和其他信息,再点击‘Create’按钮

 

 (2).创建⽬录- 在测试集上点击右键选择‘Add Folder’,在弹出框中输⼊⽬录的名称和其他信息,再点 击‘Create’按 钮

(3).添加请求- 在⽬录上点击右键选择‘Add Request’,在弹出框中输⼊请求的名称和其他信息,再点击保 存按钮

 

断言:比对结果,比对我们的预期结果和实际结果。

​
现在我也找了很多测试的朋友,做了一个分享技术的交流群,共享了很多我们收集的技术文档和视频教程。
如果你不想再体验自学时找不到资源,没人解答问题,坚持几天便放弃的感受
可以加入我们一起交流。而且还有很多在自动化,性能,安全,测试开发等等方面有一定建树的技术大牛
分享他们的经验,还会分享很多直播讲座和技术沙龙
可以免费学习!划重点!开源的!!!
qq群号:110685036【暗号:csdn999】

http请求状态码的断言

Status code:Code is 200

第一步:在SNIPPETS中,往下拉,有一项”Status code:Code is 200”,这个就是为场景中的第 1 条准备的,判断HTTP返回状态码是否为200。点击这一项,可以看到在其左边,断言代码自动添加,下图:

 返回

请求体里的数据的断言

Response body:Contains String

返回

json数据的断言

Response body:JSON value check

 返回

3.postman设置环境变量

全局变量: 作⽤范围是针对postman下⾯所有测试集均⽣效

环境变量:

1

2

3

4

- 只对选择了对应环境变量的测试集⽣效

 - 环境⼀般分为: 开发环境, 测试环境, ⽣产/线上环境(部分公司可能在测试与⽣产之间存在预⽣产环

境)

 - ⼀套环境中变量不能重复, 但是可以定义多个不重复的变量

 (1)点击,进入到界面并单击Add

(2)对其进行编辑,完成后点击Add添加

效果图:

 4.代码设置全局变量与环境变量

1

2

3

4

5

6

# 在Tests中编写如下代码实现变量的设置, 需要发送请求

# (1).全局变量的设置

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

# (2).环境变量的设置

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

# 注意: 通过代码实现环境变量的添加, 需要先选中⼀个环境, 才能设置成功.

  

2.点击

中Globals,如下图

5. 接⼝关联案例

1

2

3

(1).请求获取天⽓的接⼝,http://www.weather.com.cn/data/sk/101010100.html

(2).获取返回结果中的城市名称

(3).调⽤百度搜索接⼝: http://www.baidu.com/s?wd=北京 ,把获取到的城市名称作为请求参

  

 2.访问百度查询接⼝, 将关键词设置为上⼀个请求添加的环境变量的值

 6.批量执⾏测试⽤例

1

2

// 需求: 批量查询⼿机号归属地和所属运营商信息,并校验运营商数据是否正确

// 接⼝: http://cx.shouji.360.cn/phonearea.php?number=13012345678

  

 // 应⽤场景: 针对于某个接⼝,如果有⼤量的测试数据需要批量验证,可以把测试数据保存到数据⽂件中,通过参数化 的⽅式来实现。

 2.使用excel表将多条数据加入,并保存为文件类型为.csv

最终返回结果

7.报告⽣成

环境搭建

Newman是⼀款基于nodejs开发的可以运⾏Postman脚本的⼯具,并可以⽣成测试报告. 其环境搭建如 下:

1

2

3

4

5

6

7

8

9

# 1.nodejs环境准备

(1).下载nodejs: http://nodejs.cn/download/

(2).安装nodejs, 并配置环境变量

# 2.安装Newman

(1).命令⾏安装newman及检验:

 - 安装: npm install -g newman

 - 检验: newman -v

 注意: 如果报错执⾏: npm config set strict-ssl false

(2).命令⾏安装new-reporter-html: npm install -g newman-reporter-html

  报告生成实现

1

2

3

4

5

6

7

8

9

10

11

# ⽣成报告实现步骤

(1).导出测试集

(2).执⾏测试, 打开命令⾏窗⼝:

 newman run 测试脚本⽂件 -e 环境变量⽂件 -d 测试数据⽂件 -r html --reporterhtml-export 测试报告存储路径

# 参数说明:

 run xxx.json:表示要执⾏的postman脚本,即导出的测试集数据

 -e source:⽤来指定环境变量⽂件的路径

 -d source:⽤来指定测试数据⽂件的路径

 -r html:⽤来指定⽣成的数据结果的类型,如json、html等

 --reporter-html-export source:指定html报告⽣成的路径;如果不设置该参数,则会在当前⽬

录下⽣成⼀个名字为newman的⽂件夹

  

实现案例

1

2

3

4

5

# 需求:

1.创建测试集h2007b

2.在测试集中创建两个请求

 (1).⼀个请求天⽓接⼝

 (2).另⼀个请求使⽤百度搜索接⼝搜索上⼀个天⽓查询接⼝的城市名称

  

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

# 实现思路

1.创建测试集:h2007b

2.创建天⽓查询接⼝

 - 请求⽅式: GET

 - 请求地址: http://www.weather.com.cn/data/sk/101010100.html

 - 请求后置脚本, 从将响应数据转换为JSON数据, 再取出城市信息设置为全局变量: "city" -->

city:

 var jsonData = pm.response.json();

 var city = jsonData.weatherinfo.city;

 pm.globals.set("city", city);

3.创建百度查询接⼝:

 - 请求⽅式: GET

 - 请求地址: http://www.baidu.com/s?wd=城市名称, 城市名称使⽤全局变量的city

4.导出测试集

5.运⾏命令⽣成报告

newman run h2007b.postman_collection.json -r html --reporter-html-export

reporter.html

  

首先

二,导出

我会试着放下往事,管他有多美

最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走!

软件测试面试文档

我们学习必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有字节大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
 

在这里插入图片描述

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

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

相关文章

数据集笔记:NGSIM (next generation simulation)

1 数据集介绍 数据介绍s Next Generation Simulation (NGSIM) Open Data (transportation.gov) 数据地址:Next Generation Simulation (NGSIM) Vehicle Trajectories and Supporting Data | Department of Transportation - Data Portal 时间2005年到2006年间地…

【视觉SLAM十四讲学习笔记】第三讲——旋转矩阵

专栏系列文章如下: 【视觉SLAM十四讲学习笔记】第一讲——SLAM介绍 【视觉SLAM十四讲学习笔记】第二讲——初识SLAM 本章将介绍视觉SLAM的基本问题之一:如何描述刚体在三维空间中的运动? 旋转矩阵 点、向量和坐标系 三维空间由3个轴组成&…

JMeter使用与结果分析

1.如何得到可靠的测试报告? 以上我们便完成了一次简单的测试案例,但我们的测试还未结束。我们需要对测试结果进行分析,但是在真实项目中上述的测试结果是不可靠的,只能用作调试。你如果细心的话,应该能在运行Jmeter的…

碰到一个逆天表中表数据渲染

1. 逆天表中表数据问题 我有一个antd-table组件,他的编辑可以打开一个编辑弹窗打开弹窗里面还会有一个表格,如果这个表格的column是在外层js文件中保存的话,那么第一次打开会正常渲染数据,再次打开就不会渲染,即使是已…

彻底弄清Python软件包安装流程并解决安装错误

彻底弄清Python软件包安装流程并解决安装错误 前言:写这篇文章的初衷也是因为以前饱受Python环境配置和软件包安装的摧残,所以写下这篇文章希望帮助同样深陷泥潭的小伙伴们,该文会带你理解关于安装软件包的流程。(tips&#xff1…

大数据Doris(二十五):Stream Load数据导入演示和其他导入案例

文章目录 数据导入演示和其他导入案例 一、数据导入演示

Java获取指定日期到当前日期的差距

Java获取指定日期到当前日期的差距 一、指定日期到今天的y年m月d日 private JSONObject getYesrMonthDay(String dataParam){JSONObject res new JSONObject();/*只比较年月日,不要时间*/DateTimeFormatter df DateTimeFormatter.ofPattern("yyyy-MM-dd&quo…

Linux入门攻坚——6、磁盘管理——分区及文件系统管理

磁盘管理主要涉及分区的管理,以及分区后的文件系统管理。 磁盘的使用大体要分两步: 文件系统也是一个软件,根是自引用的。 文件系统的全局结构:物理格式: 一个磁盘刚被生产出来的时候,它里边没有划分扇区…

什么是RS485通信

RS-485是一种通讯接口标准,RS就是Recommended Standard的缩写(推荐标准的意思)485是标识号。 RS485采用总线的接线方式,广泛应用于数据采集和控制,它的主要优点之一是它允许将多个RS485设备放在同一条总线上。 多设备…

Python如何实现原型设计模式?什么是原型设计模式?Python 原型设计模式示例代码

什么是原型(ProtoType)设计模式? 原型模式(Prototype Pattern)是一种创建型设计模式,旨在通过复制现有对象来创建新对象,而无需通过标准的构造方式。它允许我们基于现有对象创建新对象&#xf…

【Python/C++ 递归】汉诺塔

汉诺塔(Tower of Hanoi),又称河内塔,是一个源于印度古老传说的益智玩具。大梵天创造世界的时候做了三根金刚石柱子,在一根柱子上从下往上按照大小顺序摞着64片黄金圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重…

车牌识别 支持12种中文车牌类型 车牌数据集下载

开源代码 如果觉得有用,不妨给个Star⭐️🌟支持一下吧~ 谢谢! Acknowledgments & Contact 1.WeChat ID: cbp931126 2.QQ Group:517671804 加微信(备注:PlateAlgorithm),进讨论群可以获得10G大小的车牌检测和识…

【EI会议征稿】第三届材料工程与应用力学国际学术会议(ICMEAAE 2024)

第三届材料工程与应用力学国际学术会议(ICMEAAE 2024) 2024 3rd International Conference on Materials Engineering and Applied Mechanics 2024年第三届材料工程与应用力学国际学术会议(ICMEAAE 2024)将于2024年3月15-17日在中…

【活动回顾】ABeam News | 庆祝ABeam德硕与毕博中国战略合作十周年,关系再升级

国家会展中心 Date.2023.11.6 ​China International Import Expo 上周,ABeam作为毕博中国长期的战略合作伙伴,受邀出席了毕博中国在第六届进博会展台召开的战略合作十周年庆祝仪式。 本次战略合作庆祝仪式在进博会这个充满活力、创新与友谊的舞台举…

【Linux】 线程

pthread_join: 获取线程返回值 #include <stdio.h> #include <stdlib.h> #include <pthread.h> #include <unistd.h> #include <string.h>/*** 测试 pthread_join* 阻塞等待一个子线程的退出&#xff0c;可以接收到某一个子线程调用pthread_ex…

企业OA办公系统的设计与实现【附源码】

企业办公自动化系统设计与实现 毕业论文 摘 要 办公自动化&#xff08;Office Automation,简称OA&#xff09;是将现代化办公和计算机网络功能结合起来 的一种新型的办公方式。企业办公自动化系统在此基础上实现企业的快速运转和交流&#xff0c;进而 有效提高企业办公效率。 本…

MCU内存基础知识

文章目录 一、存储器分类二、C语言内存分区内存区三、STM32启动文件分析四、应用分析 一、存储器分类 RAM&#xff08;Random Access Memory) &#xff1a;掉电之后就丢失数据&#xff0c;读写速度块 ROM (Read Only Memory) &#xff1a;掉电之后仍然可以保持数据 单片机的RA…

webshell免杀之传参方式

1.Cookie 由于Cookie基本上是每个web应用都需要使用到的&#xff0c;php应用在默认情况下&#xff0c;在Cookies请求头中会存在一个PHPSESSIDxxxx这样的cookie&#xff0c;其实这个就可以成为我们的传参位置 使用burp抓包将内容改成base64加密后的命令 可以看到已经执行成功了…

英飞凌TC3xx的LMU SRAM保护机制(二)

目录 1.SRAM保护配置使能 2.测试结果分析 3.小结 我们接着上文继续来梳理如何配置LMU的保护机制 英飞凌TC3xx的LMU SRAM保护机制(一)-CSDN博客 1.SRAM保护配置使能 简单举两个例子&#xff0c;地址下限寄存器如下&#xff1a; 可以看到使用SRI地址的bit31-5用于作为边界&am…

Swift-day 2

1、数据绑定&#xff0c;改变标题 State private var zoomed: Bool false 属性包装器包装的变量self.title 单向绑定 self.$textInput 双向绑定 传的是数据结构 self.title self.textInput 赋值是String self._titletitle //绑定类型加下划线2、数据绑定&#xff0c;传递结构…