Postman接口测试基本操作(全)

news2024/12/28 6:25:50

🍅 视频学习:文末有免费的配套视频可观看

🍅 关注公众号【互联网杂货铺】,回复 1 ,免费获取软件测试全套资料,资料在手,涨薪更快

Postman-获取验证码

需求:使用Postman访问验证码接口,并查看响应结果。 

地址:http://kdtx-test.itheima.net/api/captchaImage

步骤:1.设置请求方式,GET请求 2.输入接口地址 3.点击发送请求 4.查看响应结果

图片

图片

{ 
  "username":"admin", 
  "password":"HM_2023_test", 
  "code":"2", 
  "uuid":"f3ba5d0cd5554e5cb842e2ceea87d1d6" 
}

设置请求方法--->设置接口URL地址---->设置请求头--->设置请求数据--->点击Send发送请求--->查看响应数据--->查看响应体数据。

Postman-登录接口自动关联数据

Postman自动关联

图片

图片

图片

// 设置验证码的uuid为指定变量 
var jsonData=pm.response.json(); 
// 设置变量值 {{captchaImage_uuid}}
pm.environment.set("captchaImage_uuid", jsonData.uuid); 

实操:

图片

图片

Postman-调试课程添加接口

接口地址:http://kdtx-test.itheima.net/api/clues/course 请求方法:Post 请求头:

{"Content-Type":"application/json", "Authorization":"XXXX"}

请求体:

{"name":"测试开发训练课001","subject":"6","price":188.88,"applicablePerson":"2","info":"专注于测试人的培训提升"}

使用Postman的自动关联功能,设置登录接口response的json数据中的token到环境变量中。

图片

在添加课程接口的Post请求的Headers中传入登录接口返回的token参数值即可正常进行添加课程操作。

图片

Postman批量运行

图片

接口测试用例设计思路

  • 正向测试

必填参数(P2)、全部参数(P2)。

  • 逆向测试

参数数据为空(P3)、参数类型不符(P3)、参数长度不符(P3)、业务规则不符(P3)。

案例:KDTX项目登录接口用例设计

需求:

  • 已注册正确的用户名和密码,登录成功

  • 用户名或密码错误,登录失败,提示“用户名或密码错误”

要求:

  1. 按照接口测试思路进行测试点分析

  2. 从测试点转化为测试用例

  3. 使用Postman进行接口测试

API文档如下:

登录接口API文档

URL:/api/login **Type:**POST **Description:**登录方法Request-Header:

参数名称参数值是否必填
Content-Typeapplication/json

Body-Parameter:

参数名称类型描述是否必填备注
usernamestring用户名True如:Manager
passwordstring密码True如:123456
codestring验证码True如:2
uuidstring用户唯一标识True生成验证码接口

Response:

request:
{
    "username": "admin",
    "password": "HM_2023_test",
    "code": "2",
    "uuid": "b47747c6307345aab84f16e5746baef4"
}

response:
{
    "msg": "操作成功",
    "code": 200,
    "userId": 1,
    "token": "eyJhbGciOiJIUzUxMiJ9.eyJsb2dpbl91c2VyX2tleSI6ImMzN2NlNDVhLWQ3NzctNDM2MC1iN2UyLWQxZDI2ODE4NmU3NiJ9.eTfoEFY8O1rGCGd5IO8fc8nFTxMq-DFkWdvPvHcJHgO_3cPc2gqdziyIpvclRxi-QEihy2EXHRbMfm65v__JWg"
}

response-example: 响应状态码:200 响应数据:登录成功:{"msg":"操作成功","code":200,"token":"xxxxxxxx"}用户名或密码错误:{"msg":"用户名或密码错误","code":500}验证码错误或过期:{"msg":"验证码已过期","code":500}

测试用例思维导图设计提取测试点

图片

测试用例设计

图片

使用Postman执行测试用例

  1. 点击测试集中的“Add Folder”添加文件夹管理测试用例

  2. 点击文件夹上的“Add Request”添加请求实现测试用例

  3. CTRL+D快速复制已保存的用例

**Postman断言设置:**

  • 响应状态码断言

  • 返回值包含断言

  • JSON内容断言

图片

example:

图片

// 响应状态码断言
pm.test("Status code is 200", function () {
    pm.response.to.have.status(200);
});
// Response内容包含断言
pm.test("Body matches string", function () {
    pm.expect(pm.response.text()).to.include("操作成功");
});
// JSON字段断言
pm.test("Your test name", function () {
    var jsonData = pm.response.json();
    pm.expect(jsonData.msg).to.eql("操作成功");

Postman参数化

场景:测试脚本中仅测试数据不一样,使用参数化提高脚本复用性。步骤:

  1. 测试数据保存在数据文件单独维护

  2. 引用数据文件实现脚本循环调用

测试数据组织成JSON格式数据即可。

图片

同时,在这我为大家准备了一份软件测试视频教程(含面试、接口、自动化、性能测试等),就在下方,需要的可以直接去观看。

【2024年最新版】字节大佬一周讲完的自动化测试教程,挑战15天学完就业,从入门到实战,少走99%的弯路!

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

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

相关文章

LAMP 架构

LAMP和LNMP区别: 1、架构上: LAMPLinuxApacheMysqlPHP LNMPLinuxNginxMysqlPHP LAMP是LinuxApacheMysqlPHP的组合方式,bai用的是Linux; duLNMP是LinuxNginxMysqlPHP的组合方式,其特点是利用Nginx的快速zhi与轻量级&#xff0…

三月面了 6 家大厂,拿了 5 家 offer,进大厂好像也没有那么困难吧....

前言 二月底的时候因为换工作的缘故,陆续参加了华为、阿里巴巴、字节跳动、拼多多、百度、Paypal 的社招面试,除了字节跳动流程较长,我主动结束面试以外,其他的都顺利拿到了 Offer。 最近时间稍微宽裕点了,写个面经&…

vue3 动态路由及使用动态路由后刷新界面出现空白页或者404

最近编写vue3动态路由的功能遇到了一些问题,处理好了,总结出来,希望能帮助到你。正片开始 先写好本地缓存菜单的方法(存储、删除、获取) // utils/menu.jsconst getMenuList () > {return JSON.parse(localStorag…

掘根宝典之C++类型别名,关键字typedef,auto,decltype

类型别名 在C中,我们可以使用typedef关键字或using关键字来创建类型别名。下面是两种方式的示例: 使用typedef关键字创建类型别名: typedef int myInt; typedef float myFloat;myInt a;//等价int a; myFloat b;//等价float b; 使用using关…

4、Generator、class类、继承、Set、Map、Promise

一、生成器函数Generator 1、声明generator函数 function* 函数名() { }调用生成器函数 需要next()返回一个generator对象,对象的原型上有一个next(),调用返回对象{value:yield后面的值,done} function* fn() {console.log("我是生成器函数") } let it…

B端系统:漂亮就行。扯淡,漂亮仅占五分之一!

Hi,我是贝格前端工场,接触N多B端系统,也优化升级过N多。在这个过程中,仅仅美观是不够的,所以我拓展出来的B端系统五度评价指标,本篇着重讲易用性指标,欢迎老铁们评论点赞转发,有需求…

crossover玩不了qq游戏大厅怎么办 仍有五亿人坚持用QQ crossover玩游戏 Mac电脑玩QQ游戏

从1999年2月,QQ首个版本QICQ(OPEN-ICQ)上线。到2024年,靠着5亿月活用户,守住社交领域TOP2位置。你还记得QQ经典的铃声吗? 根据月狐数据2023年12月的统计,QQ月活跃账户数比微博和知乎加在一起还要…

安防视频监控汇聚平台EasyCVR使用RTMP推流出现异常的原因排查与解决

AI视频智能分析/视频监控管理平台EasyCVR能在复杂的网络环境中(专网、内网、局域网、广域网、公网等),支持设备通过4G、5G、WIFI、有线等方式接入,并将设备进行统一集中接入与视频汇聚管理,经平台接入的视频流能实现多…

paddle的版面分析的环境搭建及使用

一、什么是版面分析 版面分析技术,主要是对图片形式的文档进行版面分析,将文档划分为文字、标题、表格、图片以及列表5类区域,如下图所示: 二、应用场景 2.1 合同比对 2.2 文本类型划分 2.3 通用文档的还原 版面分析技术可将以…

KIF本地密钥注入验证步骤 RSA加解密 python JAVA

**验证步骤:** # 终端随机生成一对RSA key pair pem文件 # 终端把sn及公钥发过去 # KIF返回公钥加密后的IPEK及明文IPEK的KCV (加密机处理加密等操作:把sn和Base Derivation Key分散生成IPEK用加密机的Local Master Key存入加密机&#xff0c…

『运维备忘录』之 iptables 防火墙使用指南

前言 iptables 是一个配置 Linux 内核防火墙的命令行工具,它是用来设置、维护和检查Linux内核的IP包过滤规则的。本文将介绍 iptables 的基础知识和使用示例。 注意:红帽/红旗/CentOS等 7 版本以上已改为使用 firewalld 作为防火墙替换iptables。 一、基…

AIGC: 2 语音转换新纪元-Whisper技术在全球客服领域的创新运用

背景 现实世界,人跟人的沟通相当一部分是语音沟通,比如打电话,聊天中发送语音消息。 而在程序的世界,大部分以处理字符串为主。 所以,把语音转换成文字就成为了编程世界非常普遍的需求。 Whisper 是由 OpenAI 开发…

3.11_C++_day1_作业

作业要求&#xff1a; 程序代码&#xff1a; #include <iostream> #include <string.h>using namespace std;int main() {int a0,b0,c0,d0,e0;//分别记录字符串中的大写&#xff0c;小写&#xff0c;数字&#xff0c;空格&#xff0c;其他字符个数string str;cha…

AHU 汇编 实验五

实验名称&#xff1a;实验五 分支与循环程序设计 二、实验内容&#xff1a;从键盘输入一个四位的16进制数&#xff08;其中字母为大写&#xff09;&#xff0c;将其转化为二进制数提示输出。 实验过程&#xff1a; 源代码: data segmentbuff1 db Please input a number(H):$b…

03:HAL---中断

目录 一:中断 1:简历 2:AFIO 3:EXTI 4:NVIC基本结构 5:使用步骤 6:设计中断函数 二:中断的应用 A:对外式红外传感计数器 1:硬件介绍 2:计数代码 B:旋转编码计数器 1:硬件介绍 2:旋转编码器代码 C:按键控制LED D:代码总结 一:中断 1:简历 中断&#xff1a;在主程序…

UI学习 一

教程&#xff1a;Accessibility – Material Design 3 需要科学上网&#xff0c;否则图片显示不出来。设计教程没有图片说明&#xff0c;不容易理解。 优化UI方向 清晰可见的元素足够的对比度和尺寸重要性的明确等级一眼就能辨别的关键信息 传达某一事物的相对重要性 将重…

Unity项目开发必备技能——字体替换工具的使用(上)

在平常我们做unity项目的时候&#xff0c;工具类的使用对于我们来说是必不可少的组成部分&#xff0c;因为工具类可以解决实际问题或者是优化我们已经实现的功能。 当你在做项目的时&#xff0c;我们搭建完场景后&#xff0c;当前场景中你所创建的UI组件中的Text的字体&#xf…

springboot+vue3+nuxt3+ts+minio开发的dsblog3.0前后端分离博客

springbootvue3nuxt3tsminio开发的dsblog3.0前后端博客 一、技术栈 本博客系统采用了先进且成熟的技术栈&#xff0c;包括Spring Boot 3、Spring Security、Vue 3、Nuxt 3、TypeScript、Vite、MinIO、Redis、Element Plus和Markdown等。这些技术共同协作&#xff0c;确保了博…

float32 float16 bfloat16 推理训练GPU速度和内存调研

概念&#xff1a; 参考&#xff1a;Accelerating Large Language Models with Mixed-Precision Techniques - Lightning AI 3种数量类型表示的数据范围不一样&#xff0c;以float32为例其中有1个符号位&#xff0c;8位表示指数&#xff0c;23位表示尾数 标准训练推理是用的fl…

力扣大厂热门面试算法题 15-17

15. 三数之和&#xff0c;16. 最接近的三数之和&#xff0c;17. 电话号码的字母组合&#xff0c;每题做详细思路梳理&#xff0c;配套Python&Java双语代码&#xff0c; 2024.03.11 可通过leetcode所有测试用例。 目录 15. 三数之和 解题思路 完整代码 Java Python ​…