【工具篇】接口测试神器 -- Postman 入门教程

一、Postman概述

(1)工具介绍

Postman是一个接口测试工具,一款非常流行的API调试工具。在做接口测试的时候,Postman相当于一个客户端,它可以模拟用户发起的各类HTTP请求,将请求数据发送至服务端,获取对应的响应结果,从而验证响应中的结果数据是否和预期值相匹配;并确保开发人员能够及时处理接口中的bug,进而保证产品上线之后的稳定性和安全性。

软件功能非常强大,界面简洁明晰、操作方便快捷,设计得很人性化。

(2)工具特点

  1. 简单易用的图形用户界面;
  2. 保存API请求的历史记录;
  3. 无限制的使用集合、环境变量、运行测试和共享集合;
  4. 可用集合Runner来自动化测试;
  5. 灵活的API监控,运行时间、性能和准确;
  6. 模拟服务器,支持split-stack开发。

(3)工具下载

1、Postman最早是作用chrome浏览器插件存在的,所以,你可以到chrome商店搜索下载安装。

2、Postman提供了独立的安装包,不再依赖于Chrome浏览器。同时支持MAC、Windows和Linux,推荐独立安装。

https://www.getpostman.com/apps

二、接口概述

(1)接口定义

接口:这里特指软件接口,是指对协定进行定义的引用类型。通俗讲是就是软件系统不同组成部分衔接的约定。

通常就是所谓的API (Application Programming Interface) 应用程序编程接口,其表现的形式是源代码。

(2)接口测试定义

测试金字塔

接口测试是测试系统组件间接口的一种测试。

接口测试主要用于检测外部系统与系统之间以及内部各个子系统之间的交互点。测试的重点是要检查数据的交换,传递和控制管理过程,以及系统间的相互逻辑依赖关系等。

——《百度百科》

三、 接口工具对比

(1)指数对比

百度搜索指数

可以看到近1年里,大家对于Postman的关注度一直很高,最近几个月的涨幅更高了。

(2) 竞品对比

竞品对比,Postman在同类竞品中,并不是那么全面的,但为什么还有辣么多人用呢?我们往下看。

(3) Postman具体优势

总结的几点参考优势。

  1. 简洁性:软件界面设计简洁有设计感;
  2. 易用性:容易上手,查看官方文档或搜搜博客,可以很快地掌握其用法;
  3. 实用性:可以快速进行开发调试,并展示响应结果, URL 创建简单,且方便查看与管理;
  4. 同步性:同步并备份账号数据(集合、文件夹、要求、回应、标题预设、环境、环境变量、全局变量、收集运行结果)。

四、 Postman入门

(1)安装

4.1.1  Postman:

可用作Mac,Windows和Linux操作系统的本地应用程序。

要安装Postman,请转至官网,然后单击下载适用于Mac / Windows / Linux的客户端。

安装过程没有特别需要说明的,具体安装步骤不赘述,详情查看官网。

4.1.2. Postman Chrome插件:

目前推荐客户端,由于Chrome插件已被弃用,但插件还可以继续运行,且只能在Chrome浏览器上运行。

(2) 界面设计

  1. Header toolbar 标题栏即顶部工具栏,包含主要功能。
  2. Sidebar 侧边栏可以查找、管理请求和集合。侧边栏分两个主要选项卡: History(历史记录)和 Collections(集合)。
  3. Builder 构建器,在构建器中发送和管理API请求。上半部分是请求构建器,下半部分是响应查看器。
  4. Status bar 状态栏在底部,提供了部分功能的快捷方式。

想了解更多可以查看Postman官方文档

(3) How to work

官网示意图

  1. 在Postman中输入您的请求详细信息(URL :),注意请求方法【get】,然后点击发送【发送】按钮;

输入URL地址

  1. 该请求由API服务器接收,并且它返回一个响应;
  2. Postman收到回复,并在界面中显示回复。

显示回复

注:

  1. 上图接口是Postman的示例接口,参数就带在地址的后面以‘?’连接,响应结果可切换显示方式。
  2. 点击上图【JSON】可以选择其他显示模式。

五、 实践思考

5.1 接口项目实践思路

  1. 测试接口文档

检验接口文档的完整性、正确性、一致性、易理解性和易浏览性。

这个一般在实际测试过程中,都会弱化测试,不注重。

  1. 编写测试用例

这个大家都熟,根据接口文档编写测试用例。用例编写方法可以按照黑盒测试的用例编写规则来编写,如:边界值、正交表等等设计方法。

  1. 执行测试并出报告

根据用例执行测试,注意验证预期结果,执行结束后出具测试报告。

  1. 持续集成测试

搭建持续集成自动化测试框架。

5.2 接口文档

内部培训时用的是公司内部的文档,现在只能换开放API。

接口文档某个接口一般包括:

    1. 接口功能
    2. 请求方式
    3. 入参
    4. 出参
    5. 示例

如图:

豆瓣搜索图书接口

此豆瓣开发者API链接:https://developers.douban.com/wiki/?title=book_v2#get_book

5.2.1 步骤1

使用Postman工具发送该Get请求,依据3.3节操作,如图:

搜索软件测试

5.2.2 步骤2

添加测试代码:

    1. status code等于200
    2. Response body中包含字符串“软件测试”

注:测试代码可以依情况自己加,所以我加了。

测试断言

这里我另加了测试“响应时间小于200ms”,看到响应超过了200ms,是720ms。

再注:Postman有很多实例可以查看

实例

5.3 集成测试

主要是利用postman出的插件Newman:

Newman

上图为官网截图,介绍的主要意思就是借助Newman,可以将Postman集合与构建系统集成在一起。而我们用的比较多的构建就是Jenkins。Newman是一个命令行集合运行工具。

下图为集成测试示意图:

集成测试

5.3.1 步骤1

搭建环境:

安装Node.js(Newman基于Node.js),安装Newman (参阅Newman官网),安装Jenkins(自行搜索安装过程)。

5.3.2 步骤2

导出集合:

  1. 先保存

保存接口

  1. 再导出

    导出1

导出2

我导出保存到了桌面,是一个json集合。

5.3.3 步骤3

通过Jenkins 构建时调用Newman,来执行接口测试。

构建的命令:

C:\Users\yawa1hz1\AppData\Roaming\npm\newman -c C:\Users\yawa1hz1\Desktop\test.postman_collection.json

构建命令

选择构建的方式Execute Windows batch command,即批处理命令。新建Jenkins项目选自由项目,其他除必填项,都可以不管。

注:这段命令直接运行与window的cmd也是可以的。详细Newman命令参见官网

新建任务完成后,执行构建

构建

可在 [Console Output]查看,但由于网页编码格式不同,显示乱码,可点击[View as plain text]查看,如图

构建结果乱码

可以看到构建失败(由于某个断言failed),和乱码(网页编码格式不同)。

结果查看

可以看到,我新加的“响应时间小于200ms”测试没通过,所以构建失败了。看官可以试试更改“响应时间小于1000ms”,应该就可以构建成功,断言无failed了。

六、 总结

Postman还有很多功能,像 Runner 功能,目前只是介绍了基础使用,更多操作可以阅读官方文档。还有一点需要提一下,Postman 还是比较适合功能测试和开发调试 API 时使用。

原文地址:https://www.cnblogs.com/show2008/p/10033632.html

时间: 2024-10-27 17:54:57

【工具篇】接口测试神器 -- Postman 入门教程的相关文章

学习maven的使用,看到一篇很实用的入门教程(菜鸟级入门)

一.前言         早就知道maven 在java 项目的管理方面名声显赫,于是就想着学习掌握之,于是查阅了大量文档.发现这些文档的作者都是java 的大腕,大多都是站在掌握了一定maven 基础的角度上进行介绍,让我这初学者看的云里雾里不知所云.于是又去查看maven 的官方网站,总算是有所了解,但一旦动手实际操作却又雾里看花.唉,没办法,就只有一遍一遍的动手尝试,经过种 种磨难总算是有一点眉目了.现在就将我的经验写出来,一来避免将来遗忘,二来也给和我一样的菜鸟们提供一点点的方便.呵呵.

[转发]学习maven的使用,看到一篇很实用的入门教程(菜鸟级入门)

一.前言        早就知道maven 在java 项目的管理方面名声显赫,于是就想着学习掌握之,于是查阅了大量文档.发现这些文档的作者都是java 的大腕,大多都是站在掌握了一定maven 基础的角度上进行介绍,让我这初学者看的云里雾里不知所云.于是又去查看maven 的官方网站,总算是有所了解,但一旦动手实际操作却又雾里看花.唉,没办法,就只有一遍一遍的动手尝试,经过种种磨难总算是有一点眉目了.现在就将我的经验写出来,一来避免将来遗忘,二来也给和我一样的菜鸟们提供一点点的方便.呵呵.本文

Linux进程管理工具 Supervisord 的安装 及 入门教程

Supervisor是一个进程管理工具,官方的说法: 用途就是有一个进程需要每时每刻不断的跑,但是这个进程又有可能由于各种原因有可能中断.当进程中断的时候我希望能自动重新启动它,此时,我就需要使用到了Supervisor 主要就两个命令: supervisord : supervisor的服务器端部分,启动 supervisor 就是运行这个命令 supervisorctl:启动 supervisor 的命令行窗口. 安装(CentOS): 方式一: yum -y install python-

Postman 接口测试神器

Postman 接口测试神器 Postman 是一个接口测试和 http 请求的神器,非常好用. 官方 github 地址: https://github.com/postmanlabs Postman 的优点: 支持各种的请求类型: get.post.put.patch.delete 等 支持在线存储数据,通过账号就可以进行迁移数据 很方便的支持请求 header 和请求参数的设置 支持不同的认证机制,包括 Basic Auth,Digest Auth,OAuth 1.0,OAuth 2.0

Capabilities 入门教程:基础实战篇

该系列文章总共分为三篇: Linux Capabilities 入门教程:概念篇 Linux Capabilities 入门教程:基础实战篇 待续... 上篇文章介绍了 Linux capabilities 的诞生背景和基本原理,本文将会通过具体的示例来展示如何查看和设置文件的 capabilities. Linux 系统中主要提供了两种工具来管理 capabilities:libcap 和 libcap-ng.libcap 提供了 getcap 和 setcap 两个命令来分别查看和设置文件的

Spring Cloud 入门教程(三): 配置自动刷新

之前讲的配置管理, 只有在应用启动时会读取到GIT的内容, 之后只要应用不重启,GIT中文件的修改,应用无法感知, 即使重启Config Server也不行. 比如上一单元(Spring Cloud 入门教程(二): 配置管理)中的Hello World 应用,手动更新GIT中配置文件config-client-dev.properties的内容(别忘了用GIT push到服务器) hello=Hello World from GIT version 1 刷新 http://locahost/8

Spring Cloud 入门教程(八): 断路器指标数据监控Hystrix Dashboard

1. Hystrix Dashboard (断路器:hystrix 仪表盘)  Hystrix一个很重要的功能是,可以通过HystrixCommand收集相关数据指标. Hystrix Dashboard可以很高效的现实每个断路器的健康状况. 1). 在Ribbon服务g和Feign服务的Maven工程的pom.xml中都加入依赖 1 <dependency> 2 <groupId>org.springframework.boot</groupId> 3 <art

Spring Cloud 入门教程(二): 配置管理

使用Config Server,您可以在所有环境中管理应用程序的外部属性.客户端和服务器上的概念映射与Spring Environment和PropertySource抽象相同,因此它们与Spring应用程序非常契合,但可以与任何以任何语言运行的应用程序一起使用.随着应用程序通过从开发人员到测试和生产的部署流程,您可以管理这些环境之间的配置,并确定应用程序具有迁移时需要运行的一切.服务器存储后端的默认实现使用git,因此它轻松支持标签版本的配置环境,以及可以访问用于管理内容的各种工具.很容易添加

Spring Cloud 入门教程(一): 服务注册

1.  什么是Spring Cloud? Spring提供了一系列工具,可以帮助开发人员迅速搭建分布式系统中的公共组件(比如:配置管理,服务发现,链路开关,智能路由,微代理,控制总线,一次性令牌,全局锁,主节点选举, 分布式session, 集群状态).协调分布式环境中各个系统,为各类服务提供模板性配置.使用Spring Cloud, 开发人员可以搭建实现了这些样板的应用,并且在任何分布式环境下都能工作得非常好,小到笔记本电脑, 大到数据中心和云平台. Spring Cloud官网的定义比较抽象