本文作者:开源技术之家

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

开源技术之家 8个月前 ( 06-05 ) 512 百度已收录
SpringBoot | 第十五章:基于 Postman 的 RESTful 接口测试摘要: 前言从上一章节开始,接下来的几个章节会讲解一些开发过程中配套工具的使用。俗话说的好,工欲善其事,必先利其器。对于开发人员而言,有个好用的工具,也是一件事半功倍的事,而且开发起来也很...


前言


从上一章节开始,接下来的几个章节会讲解一些开发过程中配套工具的使用。俗话说的好,工欲善其事,必先利其器。对于开发人员而言,有个好用的工具,也是一件事半功倍的事,而且开发起来也很爽,效率也会提升很多。本章节主要讲解关于Postman这款http模拟请求工具,一般上拿来测试api接口服务的。


题外话:对于Postman而言,本人也是仅仅使用了其中一小部分,还是本着够用的原则,对于其一些高级功能,比如自动化测试、auth认证、js脚本及生成各类语言代码(如cUrl、java、ajax等等),后期若有使用时,会再编写一篇博文的。突然很感慨,要学习的东西真多呀,所以还是那句话:本着够用就行!东西是学不完的!


关于Postman


Postman是一款功能强大的网页调试与发送网页HTTP请求的工具。Postman能够发送任何类型的HTTP请求(GET, HEAD, POST,PUT..),附带任何数量的参数和HTTP headers。支持不同的认证机制(basic, digest,OAuth),接收到的响应语法高亮(html,JSON或XML)。Postman既可以以Chrome浏览器插件的形式存在,也可以是独立的应用程序存在。本文主要讲解的是客户端的使用。


安装Postman


官方网站:https://www.getpostman.com/apps


按实际的操作环境,选择对应的版本下载


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


本文直接选择当前最新版:v6.2.2。


下载后,按提示进行默认安装即可,这里就不贴图了。


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


界面按钮说明


作图不易呀,打开了从高中开始用的Fireworks。一个程序猿还需要会作图,(┬_┬)。不美观,顺序混乱,就凑合看吧。还想怎么样!


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


1.History:记录历史请求记录,一般上所有的请求,都会会在此面板上出现,按日期区分,点击可快捷新增一个该请求的tab栏。


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

2.Collections:收藏夹。你可以按请求的类型或者项目,进行目录的创建,便于管理。可以创建子目录,同时也可批量进行请求,大家可点开看看,应该都知道意思


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


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


3.便签页:可切换不同的便签页进行显示。


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


4.请求方式:如GET、POST、DELETE等。


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


5.请求地址:需要测试或者访问的api地址,支持变量,变量写法:,


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


6.URL参数值(querystring):设置url后面的参数值,如author=okong&name=okong


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


7.点击可发送请求,同时支持下载。


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


8.保存当前的请求至Collections中,也可另存为成其他的Collections。下次可以快捷点击。


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


9.鉴权参数,可以设置如OAuth、OAuth2等协议。


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


10.HTTP Header:自定义请求头部信息。


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


11.请求体(Body)设置,如POST请求时,设置请求的参数,或者二进制流、json格式参数、xml格式参数等等。


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


12.发起请求之前执行的脚本,例如request body里的那两个random变量,就是每次请求之前临时生成的,不熟悉,目前没有用过。


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


13.响应测试,返回的参数进行检验,校验结果会显示在19功能模版中。目前也没有用过,,跳过。。


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


14.各域名下的cookies查看、新增:


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


15.code:可一键生成不同语言的请求代码,如cUrl、java等。


cUrl:


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


java:这里使用的是okHttp工具


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


16、17、18、19都是请求响应response对应的参数值了,应该都比较熟悉了。如返回的值,cookies、Header、响应测试结果等。


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


20.请求响应的状态(status)值,如200等,还有响应时间和大小等。吐槽:入门级的服务器就是慢。。200毫秒。。


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


21.拷贝返回的参数到剪贴板中,就是Ctrl+c功能了,在其他地方可直接粘贴。


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


22.返回参数里面进行查询。


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


23.返回参数的不同预览状态,其实就是美化。。


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


24.设置不同的工作空间,就像eclipse一样,可不同的项目不同的工作空间。


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


25.设置不同环境下的变量值,就像后端开发有测试环境、开发环境、联调环境等一样的。


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


Postman测试RESTful接口示例


以一个简单的web服务,进行post、get请求示例,其他的大家可自己安装后自己实践下,自己动手丰衣足食呀~


创建一个web项目


这里创建以常见的http请求方式,如get、post、delete、put进行简单示例下。


RestfulController.java


/**

 * 基于Postman的RESTfulAPI接口测试

 * @author oKong

 *

 */

@RestController

@Slf4j

public class RestfulController {


    @GetMapping("/get")

    public String get(String msg) {

        log.info("get方式!");

        return msg;

    }

    

    @PostMapping("/post")

    public String post(@RequestBody String msg) {

        log.info("post方式!");

        return msg;

    }

    

    @PutMapping("/put")

    public String put(@RequestBody String msg) {

        log.info("put方式!");

        return msg;

    }

    

    @DeleteMapping("/delete")

    public String delete(String msg) {

        log.info("delete方式!");

        return "delete " + msg + " success!";

    }

    

        /**

     * 设置返回状态为417

     * @param msg

     * @return

     */

    @GetMapping("/status")

    @ResponseStatus(HttpStatus.EXPECTATION_FAILED)

    public String status(String msg) {

        log.info("status方式!");

        return msg;

    }

}


使用Postman测试


1.get方式:


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


2018-07-28 23:26:39.783  INFO 18092 --- [nio-8080-exec-5] c.l.l.s.chapter14.RestfulController      : get方式!


2.post方式:


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


2018-07-28 23:29:00.143  INFO 18092 --- [nio-8080-exec-4] c.l.l.s.chapter14.RestfulController      : post方式!


3.put方式


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


4.delete方式


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


5.httpStatus状态测试(设置返回的ResponseStatus):


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


6.请求方式不正确时:


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


此时,可以把各请求保存到Collections中,可以测试下批量执行的功能run.


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


批量执行:


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


控制台:


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


相关资料


这几篇讲解的比较简单明了:

1.https://www.cnblogs.com/xiaoxi-3-/p/7839278.html

2.https://blog.csdn.net/ma_jiang/article/details/78574691

3.官方文档:https://www.getpostman.com/docs/v6/


总结


本章节主要是讲解了利用Postman进行RESTful接口风格进行测试,也简单介绍了关于Postman的简单用法。在本人使用过程过程中,以上几种方式基本上已经满足开发需求了。前面也介绍过了Swagger了,在对接第三方系统服务时,Swagger基本就用不上了,这个时候Postman的作用就体现出来了。不同场景下用不同的测试工具。至于一些关于Postman的高级用法,大家需要的话就自行搜索查找下相关资料吧,其他功能我是基本上没有用上。。(┬_┬)


最后


目前互联网上很多大佬都有SpringBoot系列教程,如有雷同,请多多包涵了。本文是作者在电脑前一字一句敲的,每一步都是实践的。若文中有所错误之处,还望提出,谢谢。


系列


本文标题:SpringBoot | 第十五章:基于 Postman 的 RESTful 接口测试
本文链接:http://kyjszj.com/jszq/220.html
作者授权:除特别说明外,本文由 开源技术之家 原创编译并授权 开源技术之家 刊载发布。
版权声明:本文不使用任何协议授权,您可以任何形式自由转载或使用。
文章版权及转载声明

作者:开源技术之家本文地址:http://kyjszj.com/jszq/220.html发布于 8个月前 ( 06-05 )
文章转载或复制请以超链接形式并注明出处开源技术之家

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏