当前位置: 首页 > article >正文

接口测试Postman关联,断言,前置,参数化用法

一、Postman下载

我们直接搜索Postman官网下载即可

Postman API Platformicon-default.png?t=O83Ahttps://www.postman.com/

二、使用

下载安装完成后我们需要登录注册,按照Postman的指示进行注册登录,不登陆可能有些功能无法使用

登陆完成我们就可以开始对接口进行测试了

我们新建一个

这里可以改名字,中英文都可以

我们可以选择新建文件夹或者直接新建接口测试

新建完成后我们能看到这个界面,这个时候我们就能开始进行测试了

关于Postman的个功能,以下做了标示

根据请求不同我们进行不同的操作

三、GET请求

如果我们的接口是是GET请求的话我们就选择GET请求的方法

Loading...

这个网站我们可以用来测试 

我们能看到他提供的接口文档比较详细,比如这个里面我们就可以把这两个地址拼接到一起

starrysky_frontend这个是不变的,对不同的接口我们只需要改变/api/chameleon/interface,不同功能进行切换即可

接下来看看如何操作,我们看到这是一个GET请求,我们输入他的接口地址,这样对应输入就行,get请求是在Params中输入即可,那些可选参数我们根据自己的测试用例上进行执行就行了

 四、POST请求

POST请求我们就不能在Params里输入了,我们要在Body中输入,我们能看这里面有很多种里欸类型,如果我们的操作需要上传文件,比如头像,我们就选择form-data,如果是一般的注册填东西提交我们用x-www-form-urlencoded,如果是JSON我们选择raw,里面内容跟GET填写方法一样

五、关联

上面都是针对一些单独接口进行测试,但是有时候我们在对接口进行测试的时候,他会要求我们登录,比如京东淘宝这些网站查看内容我们需要登录,这时候我们就需要进行关联,让和他在进行这个接口测试的时候先进行登录,这里我们要用到Headers和Scripts了,接下来看操作

在用户登录完成的时候会有一个 token值,我们可以直接用这个参数进行登录,所以我们需要写一些JS代码,这里不会写JS代码也没关系,Postman给我们提供的有快捷代码

保存一下我们就能在这里看到一个全局变量

我们在你登录后要操作的接口添加这个,注意不是在登录接口里面

然后就该调用了,我们直接Send运行,会发现成功了,这就是关联

六、断言

断言我们依旧是JS代码来实现,不过我们还是不用写,都为我们提供好了

 

这四个就是我们的断言判断

第一个是根据状态码来看是否通过

第二个是抓提示字,比如登录成功会显示成功,我们就用这个

第三个是JSON,比如返回值中有一个码代表成功,我们就对应的输入,或者用其他返回信息都可以

第四个不太好用不再说了

添加过断言以后运行我们能在这里看到结果

七、前置

比如注册接口的测试,我们每次注册可能只能用一个手机号,不然会提示重复,我们可以在执行之前用一段JS代码让他手机号随机变化一下,不会写可以上网搜索相关的JS代码

比如这是一个生成四个随机数的JS代码,有了前置我们就可以用了,用前我们依旧需要保存到变量,这里保存的叫 phone ,这样就能在后面生成随机数来进行注册,不会提示重复

八、参数化

有时候我们有一大堆的数据需要测试,这时候一个一个输入会非常麻烦,我们就能用参数化快速测试

在桌面新建一个.txt文档,然后根据想要测试的数据进行性编写

这里也需要根据你写的进行更改对应即可

注意不能空行,空行也是会被识别的,每个参数对应的数据用逗号分开,不要用中文逗号,文档写好以后我们进行下一步,对着你的项目点击这个

在这里勾选我们需要的测试的接口

选择这个添加我们的TXT文件

执行前我们可以点击Preview预览一下

接下来执行即可

参数化也可以用断言,我们只需要在测试的接口写入断言就行了,JSON这里有些区别

这里的data相当于就是指的我们的txt里面的内容,后面跟要断言的内容即可

有时候不提供接口怎么办?我们需要用抓包工具来抓包了,根据抓包内容我们来获得接口的地址以及一些其他的信息,比如接口类型,POST还是GET什么的

比如这个就是GET类型的接口以及地址

POST请求中可能还有

Content-Type: application/json

这时候我们就需要在raw中写了

所以注意看清楚有没有请求头


http://www.kler.cn/news/318945.html

相关文章:

  • 《AI设计类工具系列之三——Magic Design》
  • 程序设计中,day 与 date 这2个单词的区别
  • Unity的Text组件中实现输入内容的渐变色效果
  • Scanner流程控制语句
  • 【kafka-03】springboot整合kafka以及核心参数详解
  • 代码随想录Day17 图论-2
  • PyCharm 的安装和配置
  • 《机器学习》周志华-CH8(集成学习)
  • yolov8环境安装
  • apache paimon简介(官翻)
  • 【第十三章:Sentosa_DSML社区版-机器学习之聚类】
  • 共享单车轨迹数据分析:以厦门市共享单车数据为例(六)
  • 《开题报告》基于SpringBoot的交通管理系统的设计与实现+学习文档+答辩讲解视频
  • 9.25今日错题解析(软考)
  • Error: one input ui-file must be specified(问题已解决)
  • Nature Communications|一种快速响应的智能可穿戴嗅觉接口(可穿戴电子/柔性电子/人机交互)
  • 直播平台美颜功能开发方案:基于视频美颜SDK的集成详解
  • vue3 + ts + vite 初始化 cesium
  • 携手SelectDB,观测云实现性能与成本的双重飞跃
  • STM32CubeIDE | 使用HAL库的ADC读取内部传感器温度
  • 基于springboot垃圾分类网站
  • 这样做PPT也太酷了吧,27.9kstar,适合开发者的ppt工具推荐
  • Spring Boot 点餐系统:提升您的餐饮体验
  • Cannot solve model: no CPLEX runtime found.【macOS系统下问题解决】
  • c# 将调试信息到VS输出窗口
  • 飞驰云联FTP替代方案:安全高效文件传输的新选择
  • 机器学习_神经网络_深度学习
  • 如何在银河麒麟操作系统中关闭IPv6
  • 解决mac下 Android Studio gradle 下载很慢,如何手动配置
  • linux安装solr