Postman下载与安装

不管是接口测试人员还是开发人员大概率下都绕不开一个工具,那就是Postman。当然可能还有一些接口测试工具,比如soapUI、Jmeter、Robot Framework 等。这四款工具笔者都使用过,通过比较发现,还是Postman比较好用,所以这里会写上一点关于Postman的使用。

使用工具的好处就是方便,因为我们在实际工作中,都会结合工具和代码的使用。我们访问Postman官网,点击download,当然Postman也分32位及64位,各位看官可以根据自己电脑操作系统进行选择。如下图所示:

安装过程比较简单 ,基本上就是一直点击下一步,安装完成之后,我们可以选择注册或者跳过注册,这里我们选择跳过注册。然后就可以看到Postman的主界面了,如下图所示:

发送HTTP请求

到这里,实战项目已经搭建好,数据库环境也已经配置好,接口文档已经提供,Postman也已经安装好,什么也不说了,先来一波接口测试。在使用Postman做接口测试之前,请确保以上几个环境都已搭建好。

使用Postman测试登录

根据接口测试文档我们可以得到,请求地址是localhost:端口号/ login,因为我们使用8001端口启动项目,所以请求地址是http://localhost:8001/login,请求参数是username、password,请求方法是POST,所以在Postman界面输入以下内容,如下图所示:

通过返回值我们可以看到,我们已经登录成功,这里因为我们输入正确的接口地址、参数(我们创建的超级管理员用户名是admin,密码是admin111111。)、请求方式,如果我们输入错误的请求方式或者请求参数会发生什么呢?如下图所示:

登录接口请求类型错误

用户名或密码错误

使用Postman测试创建博客接口

我们根据接口文档可以看到,创建博客需要传入4个参数:id、title、author、content。其实在接口测试的时候,我们最好先设计一下接口测试用例。比如这四个参数正常、异常组合一共有多少种情况,如果我们把每一种情况都测到,那么接口测试应该是做的非常成功的。 下面我将演示部分异常、正常情况。如下图所示

测试标题过长

id类型错误

title为空

请求方法错误

断言

做测试的同学都知道,没有预期结果的测试用例是不能称作测试用例的,postman断言其实也就算是预期结果。那么如何使用postman做断言呢?其实很简单,用到tests 这个模块。如下图所示:

那么我们的查询博客接口如何断言呢?很简单,从响应内容做断言。比如查询一篇博客,响应内容如下:

通过上图我们发现,我们可以断言 status、message、以及响应状态码,那么如何做断言呢?点击Tests,输入如下内容,然后再运行,如下图所示:

var jsonData = JSON.parse(responseBody);

tests["Check respose status value"] = jsonData.status === 1;
//断言status是1 tests["Check respose message value"] = jsonData.message === "success"//断言message是success pm.test("判断data里面第一个json数据的id为12", function () {
var jsonData = pm.response.json();
pm.expect(jsonData.data[0].id).to.eql(12);}); pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});// 断言响应状态码是200

通过上面断言我们发现,断言方式其实还是比较简单的,为什么输入上面这些内容呢?因为我们的返回值是Json格式内容,所以使用JSON.parse(responseBody)得到返回值。jsonData.status对应的是返回值里的status。至于状态码就比较简单了,直接点击,就会自动生成断言,如下图所示:

使用Postman自带脚本

使用Postman生成接口测试脚本,我觉得是Postman 的一个黑科技。那么如何使用呢?也特别简单,当我们运行完测试后,点击code,可以让我们选择我们想要生成的语言代码,比如我们点击Python,然后选择requests,如下图所示:

当然生成的脚本也只是一个参考,我们在实际工作中可能不会这么干。对于生成的脚本可能有点陌生,不过不用着急,我们继续往下看,下面内容就会讲如何使用Python做接口测试了,当我们学会使用Python做接口测试时,再回头看就比较简单了。不过有兴趣的同学,可以先研究一下生成的脚本。

更多Postman的使用可以关注我的博客园-POSTMAN专栏

欢迎关注微信公众号:软件测试汪。软件测试交流群:809111560

25. Postman的使用的更多相关文章

  1. Postman测试Web API

    如何查看查询字符串? →输入包含查询字符串的URL,比如:http://localhost:54176/api/ProductCategories?name=darren&age=25→点击P ...

  2. Postman接口自动化测试实例用到的完整的SM2前端加密算法代码

    var __g__ = {}; !function(t,e){"object"==typeof exports?module.exports=exports=e():"f ...

  3. Postman 接口测试神器

    Postman 接口测试神器 Postman 是一个接口测试和 http 请求的神器,非常好用. 官方 github 地址: https://github.com/postmanlabs Postma ...

  4. CHAPTER 25 The Greatest Show on Earth 第25章 地球上最壮观的演出

    CHAPTER 25 The Greatest Show on Earth 第25章 地球上最壮观的演出 Go for a walk in the countryside and you will f ...

  5. postman全方位讲解(有空看下)

    Postman 接口测试神器 Postman 是一个接口测试和 http 请求的神器,非常好用. 官方 github 地址: https://github.com/postmanlabs Postma ...

  6. 接口测试工具Postman接口测试图文教程

    Postman接口测试工具使用 一.前言     在前后端分离开发时,后端工作人员完成系统接口开发后,需要与前端人员对接,测试调试接口,验证接口的正确性可用性.而这要求前端开发进度和后端进度保持基本一 ...

  7. 使用PostMan快速生成代码

    Postman是一款功能强大的网页调试与发送网页HTTP请求的Chrome插件.关于PostMan的下载和使用网上有很多相关的博客介绍,本文主要介绍PostMan在进行模拟Http请求后可以根据需要的 ...

  8. SpringBoot | 第十五章:基于Postman的RESTful接口测试

    前言 从上一章节开始,接下来的几个章节会讲解一些开发过程中配套工具的使用.俗话说的好,工欲善其事,必先利其器.对于开发人员而言,有个好用的工具,也是一件事半功倍的事,而且开发起来也很爽,效率也会提升很 ...

  9. PostMan的在线安装和简单使用

    Postman是一款很流行的WEB接口测试工具,因其强大的功能及清新的界面,赢得许多测试及开发者的喜爱.   1.PostMan的在线安装 因google退出中国,使得chrome上的扩展插件无法在线 ...

随机推荐

  1. Linux用户空间与内核地址空间

    Linux 操作系统和驱动程序运行在内核空间,应用程序运行在用户空间,两者不能简单地使用指针传递数据,因为Linux使用的虚拟内存机制,用户空间的数据可能被换出,当内核空间使用用户空间指针时,对应的数 ...

  2. Xcode 10如何打包ipa包?

    参考: https://www.jianshu.com/p/0421b3fd2470 前置条件 首先导入证书和配置文件 具体操作步骤: product>>Archive 如图所示,选择Di ...

  3. Spring Cloud Gateway注册到服务器中心(Consul)

    Spring Cloud Gateway注册到服务器中心(Consul) 准备环境 启动Consul(./consul agent -dev)作为服务中心,默认是8500端口,然后启动spring-c ...

  4. VMware中Centos7的静态ip设置

    网络连接方式:桥接模式.修改后确定.启动centos7,root账户进行登录. 2.修改网卡配置文件 (1) 打开网卡配置文件 vim /etc/sysconfig/network-scripts/i ...

  5. redis 入门之集合

    sadd 将一个或多个 member 元素加入到集合 key 当中,已经存在于集合的 member 元素将被忽略.假如 key 不存在,则创建一个只包含 member 元素作成员的集合.当 key 不 ...

  6. POJ 3020:Antenna Placement(无向二分图的最小路径覆盖)

    Antenna Placement Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 6334   Accepted: 3125 ...

  7. NHibernet Unable to locate persister for the entity

    第一 xml文件必须为 *.hbm.xml 第二  设置xml文件为嵌入的资源,用鼠标点击右键 然后生成操作里 选择嵌入的资源即可解决. https://www.cnblogs.com/lyj/

  8. MySQL系统架构

    已经很久没有写博客了,平时总感觉没有时间写,但是却有大把的时间去走神,去做一些无用的事情.写博客是挺锻炼人的一个过程,不仅锻炼写作能力,坚持写还能够大幅提升技术水平,写出来还能够有广大的网友帮助我们纠 ...

  9. spring 获取url参数

    1. usl格式: http://localhost:8080/contact/delete/3 java代码 @RequestMapping(value="/delete/{id}&quo ...

  10. Spring Boot Service注入为null mapper注入为null @Component注解下@Value获取不到值 WebsocketServer类里无法注入service

    最近搞了一下websocket前台(这个网上有很多的教程这里就不班门弄斧啦) 以及前后台的交互 和后台的bug(搞了两天) 也是状态频发 bug不断 下面说一说问题. Websocket主类里面无法注 ...