美文网首页Android开发Android开发Android开发经验谈
接口测试之深入解析 “Postman”工具

接口测试之深入解析 “Postman”工具

作者: 程序老秃子 | 来源:发表于2022-05-08 21:37 被阅读0次

    什么是接口测试?

    接口测试是测试系统组件间接口的一种测试,接口测试主要用于测试系统与外部其他系统之间的接口,以及系统内部各个子模块之间的接口; 测试的重点是要检查接口参数传递的正确性,接口功能实现的正确性,输出结果的正确性,以及对各种异常情况的容错处理的完整性和合理性主要用于测试系统与外部其他系统之间的接口,以及系统内部各个子模块之间的接口

    测试的重点是要检查接口参数传递的正确性,接口功能实现的正确性,输出结果的正确性,以及对各种异常情况的容错处理的完整性和合理性

    接口的定义

    我们常说的接口一般指2种

    ● API:应用程序编程接口

    ● GUI:图形用户界面(接口)

    接口测试的目的

    为了测试接口,尤其是那些与系统相关联的外部接口,接口测试的重点是要检查数据的交换,传递和控制管理 过程,还包括处理的次数,接口测试属于功能测试,是通过接口文档(开发出,一般大公司有接口评审)上的调用地址、 请求参数、拼接报文,然后发送请求,检查返回结果

    接口测试的原理

    模拟客户端向服务器发送请求报文,服务器接收请求报文后对相应的报文做处理并向客户端返回应答,客户端接收应答的一个过程。

    接口测试的重点

    检查数据的交换,传递和控制管理过程,还包括处理的次数

    接口测试用例设计

    接口测试对象主要为接口,但随着系统复杂度越来越高,接口越来越多,完全覆盖是一件很困难的事情,且实际过程中任意接口的变动都可能导致我们接口测试用例不可用

    所以通常情况下主要测试最外层的两类接口:数据进入系统接口(调用外部系统的参数为本系统使用)和数据流出系统接口(验证系统处理后的数据是否正常)

    PS:设计用例时还需要注意外部接口提供给使用这些接口的外部用户什么功能,外部用户真正需要什么功能

    接口测试工具

    postman:推荐,基本功能免费;最简单的基于http接口的调试和测试工具

    jmeter:后置处理器配合断言基本上可以满足接口测试需求,就是测试报告要做二次开发

    自己撸代码:推荐,配合类似xunit测试框架,基本可以满足一切需求

    soapui: 收费的

    ensomnia:postman的弱化版,基本功能免费,重要的是工具代码开源,可以自己改

    paw: mac上最强

    那么今天我们就来深入解析postman 工具

    Postman 背景介绍

    用户在开发或者调试网络程序或者是网页B/S模式的程序的时候是需要一些方法来跟踪网页请求的,用户可以使用一些网络的监视工具比如著名的Firebug等网页调试工具

    今天给大家介绍的这款网页调试工具不仅可以调试简单的css、html、脚本等简单的网页基本信息,它还可以发送几乎所有类型的HTTP请求!

    Postman在发送网络HTTP请求方面可以说是Chrome插件类产品中的代表产品之一

    Postman概述

    ● Postman是一款功能强大的网页调试与发送网页HTTP请求并且能举例运行测试的Chrome插件

    ● 方便塞数据,查看响应,设置检查点/断言,能进行一定程度上的自动化测试

    ● 它可以利用Chrome插件的形式把各种模拟用户HTTP请求的数据发送到服务器,以便开发人员能够及时地作出正确的响应,或者是对产品发布之前的错误信息提前处理,进而保证产品上线之后的稳定性和安全性

    Postman的操作环境

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

    Postman使用功能

    模拟各种HTTP requests

    ● 从常用的 GET、POST 到 Restful 的 PUT 、 DELETE …等等。 甚至还可以发送文件、送出额外的 header

    Collection 功能(测试集合)

    ● Collection 是 requests的集合,在做完一个测试的時候, 你可以把这次的 request 存到特定的 Collection 里面,如此一来,下次要做同样的测试时,就不需要重新输入

    ● 而且一个collection可以包含多条request,如果我们把一个request当成一个test case,那collection就可以看成是一个test suite;通过collection的归类,我们可以良好的分类测试软件所提供的API,而且 Collection 还可以 Import 或是 Share 出来,让团队里面的所有人共享你建立起来的Collection

    人性化的Response整理

    ● 一般在用其他工具来测试的时,response的内容通常都是纯文字的 raw, 但如果是 JSON ,就是塞成一整行的 JSON

    ● 这会造成阅读的障碍 ,而 Postman 可以针对response内容的格式自动美化; JSON、 XML 或是 HTML 都会整理成我们可以阅读的格式

    内置测试脚本语言

    ● Postman支持编写测试脚本,可以快速的检查request的结果,并返回测试结果

    设定变量与环境 Postman

    ● 可以自由设定变量与Environment,一般我们在编辑request,校验response的时候,总会需要重复输入某些字符,比如url,postman允许我们设定变量来保存这些值。并且把变量保存在不同的环境中

    ● 比如,我們可能会有多种环境, development 、 staging 或 local, 而这几种环境中的 request URL 也各不相同,但我们可以在不同的环境中设定同样的变量,只是变量的值不一样,这样我们就不用修改我们的测试脚本,而测试不同的环境

    为什么选择Postman?

    如今,Postman的开发者已超过1000万(来自官网),选择使用Postman的原因如下:

    简单易用 要使用Postman,你只需登录自己的账户,只要在电脑上安装了Postman应用程序,就可以方便地随时随地访问文件

    使用集合 Postman允许用户为他们的API调用创建集合。每个集合可以创建子文件夹和多个请求。这有助于组织测试结构

    多人协作 可以导入或导出集合和环境,从而方便共享文件。直接使用链接还可以用于共享集合

    创建环境 创建多个环境有助于减少测试重复(DEV/QA/STG/UAT/PROD),因为可以为不同的环境使用相同的集合。这是参数化发生的地方,将在后续介绍

    创建测试 测试检查点(如验证HTTP响应状态是否成功)可以添加到每个API调用中,这有助于确保测试覆盖率

    自动化测试 - 通过使用集合Runner或Newman,可以在多个迭代中运行测试,节省了重复测试的时间

    调试 Postman控制台有助于检查已检索到的数据,从而易于调试测试

    持续集成 通过其支持持续集成的能力,可以维护开发实践

    结语

    技术是无止境的,你需要对自己提交的每一行代码、使用的每一个工具负责,不断挖掘其底层原理,才能使自己的技术升华到更高的层面

    Android 架构师之路还很漫长,与君共勉

    PS:有问题欢迎指正,可以在评论区留下你的建议和感受;

    欢迎大家点赞评论,觉得内容可以的话,可以转发分享一下

    相关文章

      网友评论

        本文标题:接口测试之深入解析 “Postman”工具

        本文链接:https://www.haomeiwen.com/subject/mbfcurtx.html