Postman接口测试基本操作

🍅 点击文末小卡片,免费获取软件测试全套资料,资料在手,涨薪更快

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-Type application/json

Body-Parameter:

参数名称 类型 描述 是否必填 备注
username string 用户名 True 如:Manager
password string 密码 True 如:123456
code string 验证码 True 如:2
uuid string 用户唯一标识 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格式数据即可。

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

这些资料,对于做【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。

相关推荐
cnxy1885 小时前
围棋对弈Python程序开发完整指南:步骤1 - 棋盘基础框架搭建
开发语言·python
落叶,听雪5 小时前
河南建站系统哪个好
大数据·人工智能·python
极客小云6 小时前
【生物医学NLP信息抽取:药物识别、基因识别与化学物质实体识别教程与应用】
python·机器学习·nlp
南_山无梅落6 小时前
12.Python3函数基础:定义、调用与参数传递规则
python
laocooon5238578867 小时前
插入法排序 python
开发语言·python·算法
清水白石00810 小时前
《深入 Python 上下文管理器:contextlib.contextmanager 与类实现方式的底层差异全景解析》
开发语言·python
程序员佳佳10 小时前
GPT-4时代终结?GPT-5.2与Banana Pro实测数据公开,普通开发者如何接住这泼天富贵
开发语言·python·gpt·chatgpt·重构·api·midjourney
Blossom.11810 小时前
多模态大模型LoRA微调实战:从零构建企业级图文检索系统
人工智能·python·深度学习·学习·react.js·django·transformer
小钻风336610 小时前
软件测试: 从入门到实践 (接口测试)
软件测试·python
小鸡吃米…11 小时前
带Python的人工智能——计算机视觉
人工智能·python·计算机视觉