百度360必应搜狗淘宝本站头条
当前位置:网站首页 > 热门文章 > 正文

HTTP接口测试工具Postman(http接口怎么测)

bigegpt 2025-02-04 12:49 8 浏览

一、介绍

postman是接口调试工具,发送几乎所有类型的HTTP请求,有两种应用形式,pc端和chrome插件,以chrome插件形式可以通过Chrome的应用商店进行搜索并安装(不过官方已经在2017年宣布不在维护chrome版本,官方推荐安装pc端。

postman适用于不同的操作系统,Postman Mac、Windows X32、Windows X64、Linux系统,还支持postman 浏览器扩展程序、postman chrome应用程序等。

二、安装

官网下载地址:
https://www.getpostman.com/apps

postman教程:
https://www.jellythink.com/tool-tutorials/postman/

postman视频教程:
https://www.bilibili.com/video/BV134411v7Sj?p=4

postman主界面

请求区域介绍

1 Authorization:身份验证,主要用来填写用户名密码,以及一些验签字段,postman有一个helpers可以帮助我们简化一些重复和复杂的任务。当前的一套helpers可以帮助你解决一些authentication protocols的问题。;

2 Headers:请求的头部信息

3 Body:post请求时必须要带的参数,里面放一些key-value键值对

4 Pre-requerst Script:可以让你在 请求之前自定义请求数据,这个运行在请求之前,语法使用JavaScript语句。

5 tests:tests标签功能比较强大,通常用来写测试,它是运行在请求之后。支持JavaScript语法。postman每次执行request的时候,会执行tests。测试结果会在tests的tab上面显示一个通过的数量以及对错情况。这个后面会进行详解,它也可以用来设计用例,比如要测试返回结果是否含有某一字符串

6 form-data:,它将表单数据处理为一条消息,以标签为单元,用分隔符分开。既可以单独上传键值对,也可以直接上传文件(当上传字段是文件时,会有Content-Type来说明文件类型,但该文件不会作为历史保存,只能在每次需要发送请求的时候,重新添加文件。);post请求里较常用的一种

7 x-www-form-urlencoded:对应信息头
-application/x-www-from-urlencoded,会将表单内的数据转换为键值对;

8 raw:可以上传任意类型的文本,比如text、json、xml等,所有填写的text都会随着请求发送;

9 binary:对应信息头
-Content-Type:application/octet-stream,只能上传二进制文件,且没有键值对,一次只能上传一个文件, 也不能保存历史,每次选择文件,提交;

三、接口测试流程

1.获取接口信息:可以通过接口文档或者浏览器抓包获取接口基本调用方式和返回。

2.接口测试用例设计:根据获取到的接口信息、按照接口测试用例设计方法,设计参数和预期返回结果。

3.接口发包:使用工具或者编程向接口传递参数。

4.返回信息验证:获取接口返回的结果,进行解析和验证。

四、请求

1.新建测试集、文件夹、请求用例

Postman测试管理的单位是测试集(Collections),测试集内可以创建文件夹(Folder)和具体的请求(Requests)。首先点击左边栏上面的添加目录图标来新增一个测试集(collections),这样就等于新建了一个项目,我们可以把一个项目或一个模块的用例都存放在这个集中;然后在测试集之下我们还可以再建立文件夹(folder)来进行功能用例的细分(点击用例集右侧的--选择“Add Folder”完成文件夹的创建)。

创建了项目目录后我们就可以新建用例了,具体是点击右侧区域的+号来新增一个空用例的模板,也可以通过复制一个已有用例来达到新建一个用例的目的。

2、添加请求信息

http接口请求:接口url、请求方法、请求头、请求参数四个必需设置的选项。

用例建好了请求内容还是空的,我们首先需要添加相应的请求信息,这部分的操作都在右侧的信息区域,一般流程如下:

(1)选择一个请求方法,如:get或post

(2)填写请求的url,如:http://www.baidu.com

(3)如果是get则请求参数则以键值对添加当参数中,url会自动补全,如果是post则请求添加在body中。

(4)点击“send”发送请求

(5)查看请求响应内容

3、授权Authorization

下面讲解几种常用的认证方式。

No Auth,默认选中,不需要认证;

Bearer Toker,填写Token进行验证;

Basic Auth,基础身份认证,输入用户名和密码,直接明文发送数据,点击Preview Request按钮或直接send,会自动在Headers中生成authorization header.

Digest Auth,摘要认证。消息摘要式身份认证是在基本身份认证上面扩展了安全性,服务器为每一个连接生成一个唯一的随机数,客户端用这个随机数对密码进行MD5加密,然后返回服务器,服务器也用这个随机数对密码进行加密,然后和客户端传送过来的加密数据进行比较,如果一致就返回结果

客户端请求资源->服务器返回认证标示->客户端发送认证信息->服务器查验认证

OAuth 2.0,一个开放授权协议。支持获得OAuth 2.0 token并添加到requests中。

4、添加头信息

有些时候请求时还需要一些特定的头信息,postman同样可以完美支持,直接点击Headers标签就可以进行请求头的信息设置

5.发送请求,查看请求结果

五、其他

1、关于变量

Postman中有Global(全局)、Enviroment(环境)、Local(局部)、Data(数据)四种变量,优先级从高至低为:Data ---- > Local ---- > Enviroment ---- > Global。

变量在postman中的使用为{{variableName}},当postman解析变量时,字符串{{variableName}}会被替换为相应的值。

举个栗子:在一个环境变量中url的值被定义为http://www.baidu.com; 然后使用{{url}}为地主进行访问,结果依然是访问的http://www.baidu.com。

2、导出用例为代码

Postman还有一个棒棒的地方就是导出用例为CODE,即如果你编写好了用例之后可以通过点击屏幕右侧的【Code】来一键生成代码,并且还有好多语言和类库可以选择。

3、批量执行用例

接下来介绍POSTMAN的批量执行功能,这个功能由单独的runner来负责,我们需要在另外的界面进行操作,具体如下:

依次点击上面的按钮就会出现runer界面,如下直接点击最下面的“run 测试集名字”就好了。

4、环境配置

最后上一个比较好用的功能,大家都知道我们的测试环境往往会有多套,那怎么办呢,我们不能这个环境用例写完,然后再另外一个环境重新来一次吧?显然这种办法很不招人喜欢,可喜的是伟大的postman早就想到了这个问题。postman提供了环境变量的设置以满足不同测试环境的需求,如图,选择右上角工具图标,进入 Management Environments,点击Add新增环境(点击环境名称可以再次进行编辑)。以例子来说,我们创建了两个环境,分别给两个环境的url配置不同的地址,再使用的时候根据环境的切换,url的值就会发生变化,这样就达到了地址切换的效果。

相关推荐

【Docker 新手入门指南】第十章:Dockerfile

Dockerfile是Docker镜像构建的核心配置文件,通过预定义的指令集实现镜像的自动化构建。以下从核心概念、指令详解、最佳实践三方面展开说明,帮助你系统掌握Dockerfile的使用逻...

Windows下最简单的ESP8266_ROTS_ESP-IDF环境搭建与腾讯云SDK编译

前言其实也没啥可说的,只是我感觉ESP-IDF对新手来说很不友好,很容易踩坑,尤其是对业余DIY爱好者搭建环境非常困难,即使有官方文档,或者网上的其他文档,但是还是很容易踩坑,多研究,记住两点就行了,...

python虚拟环境迁移(python虚拟环境conda)

主机A的虚拟环境向主机B迁移。前提条件:主机A和主机B已经安装了virtualenv1.主机A操作如下虚拟环境目录:venv进入虚拟环境:sourcevenv/bin/active(1)记录虚拟环...

Python爬虫进阶教程(二):线程、协程

简介线程线程也叫轻量级进程,它是一个基本的CPU执行单元,也是程序执行过程中的最小单元,由线程ID、程序计数器、寄存器集合和堆栈共同组成。线程的引入减小了程序并发执行时的开销,提高了操作系统的并发性能...

基于网络安全的Docker逃逸(docker)

如何判断当前机器是否为Docker容器环境Metasploit中的checkcontainer模块、(判断是否为虚拟机,checkvm模块)搭配学习教程1.检查根目录下是否存在.dockerenv文...

Python编程语言被纳入浙江高考,小学生都开始学了

今年9月份开始的新学期,浙江省三到九年级信息技术课将同步替换新教材。其中,新初二将新增Python编程课程内容。新高一信息技术编程语言由VB替换为Python,大数据、人工智能、程序设计与算法按照教材...

CentOS 7下安装Python 3.10的完整过程

1.安装相应的编译工具yum-ygroupinstall"Developmenttools"yum-yinstallzlib-develbzip2-develope...

如何在Ubuntu 20.04上部署Odoo 14

Odoo是世界上最受欢迎的多合一商务软件。它提供了一系列业务应用程序,包括CRM,网站,电子商务,计费,会计,制造,仓库,项目管理,库存等等,所有这些都无缝集成在一起。Odoo可以通过几种不同的方式进...

Ubuntu 系统安装 PyTorch 全流程指南

当前环境:Ubuntu22.04,显卡为GeForceRTX3080Ti1、下载显卡驱动驱动网站:https://www.nvidia.com/en-us/drivers/根据自己的显卡型号和...

spark+python环境搭建(python 环境搭建)

最近项目需要用到spark大数据相关技术,周末有空spark环境搭起来...目标spark,python运行环境部署在linux服务器个人通过vscode开发通过远程python解释器执行代码准备...

centos7.9安装最新python-3.11.1(centos安装python环境)

centos7.9安装最新python-3.11.1centos7.9默认安装的是python-2.7.5版本,安全扫描时会有很多漏洞,比如:Python命令注入漏洞(CVE-2015-2010...

Linux系统下,五大步骤安装Python

一、下载Python包网上教程大多是通过官方地址进行下载Python的,但由于国内网络环境问题,会导致下载很慢,所以这里建议通过国内镜像进行下载例如:淘宝镜像http://npm.taobao.or...

centos7上安装python3(centos7安装python3.7.2一键脚本)

centos7上默认安装的是python2,要使用python3则需要自行下载源码编译安装。1.安装依赖yum-ygroupinstall"Developmenttools"...

利用本地数据通过微调方式训练 本地DeepSeek-R1 蒸馏模型

网络上相应的教程基本都基于LLaMA-Factory进行,本文章主要顺着相应的教程一步步实现大模型的微调和训练。训练环境:可自行定义,mac、linux或者window之类的均可以,本文以ma...

【法器篇】天啦噜,库崩了没备份(天啦噜是什么意思?)

背景数据库没有做备份,一天突然由于断电或其他原因导致无法启动了,且设置了innodb_force_recovery=6都无法启动,里面的数据怎么才能恢复出来?本例采用解析建表语句+表空间传输的方式进行...