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

栏目: 编程工具 · 发布时间: 5年前

内容简介:从上一章节开始,接下来的几个章节会讲解一些开发过程中配套工具的使用。俗话说的好,工欲善其事,必先利其器。对于开发人员而言,有个好用的工具,也是一件事半功倍的事,而且开发起来也很爽,效率也会提升很多。本章节主要讲解关于Postman是一款功能强大的网页调试与发送网页HTTP请求的工具。Postman能够发送任何类型的HTTP请求(GET, HEAD, POST,PUT..),附带任何数量的参数和HTTP headers。支持不同的认证机制(basic, digest,OAuth),接收到的响应语法高亮(HT

前言

从上一章节开始,接下来的几个章节会讲解一些开发过程中配套 工具 的使用。俗话说的好,工欲善其事,必先利其器。对于开发人员而言,有个好用的工具,也是一件事半功倍的事,而且开发起来也很爽,效率也会提升很多。本章节主要讲解关于 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接口测试

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

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

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

界面按钮说明

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

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

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

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

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

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

内部按钮:

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

cUrl:

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

java:这里使用的是okHttp工具

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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接口测试

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接口测试

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接口测试

4、delete方式

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

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

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

6、请求方式不正确时:

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

批量执行:

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

控制台:

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

相关资料

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

  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接口测试》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

More Eric Meyer on CSS (Voices That Matter)

More Eric Meyer on CSS (Voices That Matter)

Eric A. Meyer / New Riders Press / 2004-04-08 / USD 45.00

Ready to commit to using more CSS on your sites? If you are a hands-on learner who has been toying with CSS and want to experiment with real-world projects that will enable you to see how CSS......一起来看看 《More Eric Meyer on CSS (Voices That Matter)》 这本书的介绍吧!

随机密码生成器
随机密码生成器

多种字符组合密码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具