| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 开发测试 -> Apipost 一款值得使用的利器 -> 正文阅读 |
|
[开发测试]Apipost 一款值得使用的利器 |
一、引言????????今天是小编在家管控的第22天,天气晴,心情可以,状态不错。 ????????嗯,上海加油。 ????????今天小编来推荐一款利器。 二、主角登场????????Apipost 是一个支持模拟POST、GET、PUT常见的HTTP请求,支持团队协作,并可直接生成并导出接口文档的API调试、管理工具。 ????????你可以把这款利器看成这样的组合: ????????Apipost = Postman + Swagger + Mock ????????Postman和Swagger大家应该都很熟悉了吧,Mock这边小编和大家简单介绍一下,Mock其实就是模拟接口所返回参数的工具,方便快速帮助走完整体流程,在一些特殊的环境下,可以帮助我们进行程序调试。举个例子,A公司和B公司,有合作关系,现在项目都已经上线了。然后B公司把他们的测试环境关闭了,但是A公司可能他内部需求调整需要使用B公司的测试环境来进行走程序流程。这个时候该怎么办呢? Mock就是一个很好的方式,A公司可以在Mock工具里定义B公司程序所返回的结果,这样由之前调用B公司的测试地址,改成为调用Mock测试地址,从而达到模拟的效果,而今天推荐的Apipost就提供了Mock工具,详细点小编在后面为大家详细的讲解。 ? ? ? ? 整体上,我们认识Apipost它所具备的基本能力,那为什么小编要给大家推荐这款? ? ? ? ? 小编公司刚好Postman、Swagger、Mock三个功能都有使用,三个功能,对应着三个产品,接口调试小编需要下载Postman、使用Swagger对代码有侵入性,而且Swagger最后显示出来文档效果着实不咋地、使用Mock需要额外去下载一个Mock工具,进行私有化部署,占用服务器资源、域名资源等等。 ? ? ? ? Apipost 就把这三点集中于一身,低成本做长期主义的事情,小编就分着三个维度,给大家讲讲Apipost它和其他产品对比的一个优势。 三、Apipost VS Postman? ? ? ? 跟Postman对比,官方写的是:
1、团队协作????????首先Apipost基本上涵盖了Postman的核心功能,在这基础上Apipost有一个核心的优势就是,它有较好的团队成员可实时协作,这时候有小伙伴就要说了:“Postman也有团队协作呀”,对,Postman确实也有,但是公司基本上都不怎么用,为什么? ? ? ? ? 首先Postman是印度软件,服务器实在境外的,有没有觉得Postman用起来会有点卡顿的时候,而且严重还会闪退。Postman的团队协作价格也不便宜了,公司也不会愿意为此付出公司的成本。 ? ? ? ? 回到今天主角Apipost,首先是由我们国内团队研发出来的,服务器都是国内高速云服务器,并且团队协作价格方面是Postman的1/5。 ? ? ? ? ?实际问题: ? ? ? ? 之前小编公司就有一个需求,涉及到一大堆接口测试,然后提交给测试人员,研发人员需要准备测试报文,研发人员在用Postman自测完成后,再把报文复制到文本中去,最后给到测试人员,这个时候就感觉真的太麻烦了,报文差不多就30多个。 ? ? ? ? 这种工作感觉上就是没意义的,但是还要去做这个事情。??接下来小编就以这个案例,来讲讲如何使用Apipost来解决这个痛点,提高团队协作效率。???????? ? ? ? ? 解决方法: ? ? ? ? Apipost提供了很好的团队管理、项目管理、协作管理这三大模块。 ? ? ? ? 团队管理整体上来说,就是隔离项目。设计的初衷是为了便于人员流动,您可以把它一个公司理解为一个团队。当人员离职或者更换公司时,可以通过新建团队和切换团队来实现不同公司间项目数据的隔离。 ? ? ? ? 项目管理主要是为了隔离接口数据,可以把不同的业务创建成不同的项目,从而实现接口数据的隔离。 ? ? ? ? 协作管理这个就很关键,在同一个项目中的人员,可以看到其他人的操作,并且可以支持在线协作,提高工作效率。 ? ? ? ? 当然有些小伙伴可能就是想简简单单的去使用,不想搞这些管理的东西,Apipost也考虑到了并且支持客户端支持不登录使用、客户端支持离线脱机使用。 ? ? ? ? 操作流程: ? ? ? ? ?从软件左侧导航栏点击项目、或者团队,跳转到后台管理界面,然后进行注册。 ? ? ? ? ?一共三个步骤:创建团队、创建项目、邀请协作人员。 ? ? ? ? ? ? ? ? ? 只要简单的操作几个步骤,?在软件工作台内切对应的团队和对应的项目,就可以一同协作了,再也不用把报文复制来,复制去。 ? ? ? ? ?不仅仅是协作,Apipost还提供了很好的管理功能,知道哪些API还在研发中,哪些已完成、需修改,包括协作日志。 ? ? ? ? 小编感觉还有一个更好的作用,就是监督研发人员自测!!! ? ? ? ? 很多刚进公司的的初级研发人员,可能是着急实现需求,有时候都不会自测的,就提交给测试人员,或者是前端人员开始测试或者联调,结果问题很多,并且接口文档还需要自己写。 ? 2、接口参数依赖????????实际问题: ? ? ? ? 什么是参数依赖? ? ? ? ? token就是一个很好例子,必须要先获取token,之后其他接口的请求,都需要带上token这个参数。 ? ? ? ? 之前的做法就是先获取一次token,然后手动把token在其他接口改掉,其实这也是一个很繁琐的动作。 ????????解决方法: ? ? ? ? Apipost提供了预执行脚本、后执行脚本这两个东西。 ? ? ? ? 预执行脚本,就是在发送请求之前执行的脚本,可以生成一些当前时间戳等等。 ? ? ? ? 后执行脚本,就是发送请求之后,获得了响应报文,执行的脚本。 ? ? ? ? 这两者脚本就是通过JS语法来实现的,参数依赖就可以利用后执行脚本来实现。 ? ? ? ? 使用后执行脚本 + 变量设置,就可以解决我们这个问题: ????????操作流程: ? ? ? ? 在获取token接口中,加上一个后执行脚本,把获得的token,设置到一个环境变量中,然后在其他接口直接引用变量即可。 ? ? ? ? 通过console.log输出response,可以看到在response.json中,可以获得token参数。 ????????然后点击“设置一个环境变量”,key 就是token 、 value就是reponse.json.token 就可以了 ? ? ? ? ?只需要使用{{}} 来引用对应的环境变量,就可以达到参数依赖的效果了。 3、Websocket????????实际问题: ????????在实际工作中,有时候会使用到ws,然后服务端开发好了,需要多个客户端测试怎么办? ? ? ? ? 之前小编的方案就是:百度去找一个工具去使用。 ? ? ? ?? ?????????解决方法: ? ? ? ? 在全新Apipost6.1版本重点推出Websocket测试功能,也是一个很实用的功能, 4、其他方面? ? ? ? Apipost也包含自动化测试流程、Apipost也支持web端、主题模式设置等功能。 ? ? ? ? 小编我还是习惯白色的哈哈哈。? 四、Apipost VS Swagger????????实际问题一: ? ? ? ? Swagger大家绝大同学都应该使用过,首先需要在项目中集成Swagger的相关依赖、然后在代码中使用注解进行配置。 ? ? ? ? 最终打开了Swagger的文档,也会感觉很乱,不清爽。 当然Swagger不是仅仅是接口文档,它也直接支持进行调用,但是我们使用swagger主要不就是为了接口文档嘛? 聊到这里就能看出,不管是Swagger的使用成本、学习成本,还是有点高的。 ????????解决方法: ? ? ? ?Apipost就提供了一套很清爽的接口文档,并且是一键快速生成文档,而且对于文档的管控更加灵活,可以设置文档的接口的查看权限、文档链接有效期,文档查看密码等。 ? ? ? ? ?总的来就是,就是没有废话,没有装饰,简单明了,一眼就能过get到自己所需要的内容。 ? ? ? ? 先建议设置一下,不然每个接口还需要额外手动去保存。 ?????????点击"分享文档",可以选择有效期、是否需要密码,然后直接打开外网链接就行了。 ????????实际问题二: ? ? ? ? 那现在测试人员,或者前端人员,看到了文档,需要调用接口咋办? 一个个参数复制嘛? ? ? ? ? 这问题也是最常见碰到的问题,有时候接口文档可能是word,可能是其他格式文档,还得一个个去复制,字段有时候几十个,复制起来也很累。 ? ? ? ? 解决方法: ? ? ? ? 如果使用的Apipost分享的文档,只需要点击复制接口,在软件中点击+,选择“粘贴接口/文本”,就整套都复制过来了,无需一个个进行设置。 五、Apipost VS Mock? ? ? ? Mock工具在给大家解释下,Mock就是一个工具,它能够定义一个请求的返回参数。再举个例子,就比如说,你是个前端工程师,页面都写好了,可是后端工程师生病请假了,那联调怎么办? 这个时候就可以用Mock工具,定义后台需要返回的参数,前端就直接调用Mock工具,拿到参数,完成联调。 到时候后台研发好了,直接把调用地址换成后台地址就好了。 ????????实际问题: ? ? ? ? Mock是公司经常所需要使用的东西,要么可以定义一个接口,然后在代码里面直接返回固定参数,也可以达到Mock的效果,但是这种方式很明显太笨了。 ? ? ? ? 那就需要一个Mock工具,其实很有很多开源的Mock工具项目,之前小编公司,找了一个开源的Mock项目,然后私有化部署,然后进行使用。也占用服务器资源等等。 ? ? ? ??解决方法: ? ? ? ? Apipost就提供了Mock工具的时候,它可以以低成本,轻量级的帮助我们解决Mock的问题。再也不需要额外的再去部署服务。 ????????操作流程: ????????建议先对这个进行设置,因为Mock生成的地址是随机的,必须要有一个标识对应某一个API接口,这样设置了,就会自动以你在接口地址定义的路径对应上。 ? ? ? ? ? ?最后可以往这个Mock地址发起请求,就可以拿到对应的返回参数了。 六、最后总结????????本文章以上就是小编在工作中所遇到的实际问题,如何利用Apipost解决问题为主介绍了这款工具。 ? ? ? ? 使用下来整体感觉会比较舒服,尤其是那个分享接口文档,结构特别清晰,也如官方介绍所说"漂亮的文档",分享文档还有一个小编觉得很重要的功能:文档归档机制,就是为某一个时刻的文档进行快照操作,避免随着其他客户端进行修改保存而导致文档改变。 ? ? ? ? 还有一个感受就是带来了方便,之前公司确实是找了三个不相干的产品结合使用,而Apipost最终合并到一个产品上,学习成本降低了,也给团队协作之间带来了便捷性。 ? ? ? ? 总的来说使用Apipost 就是:使用低成本做长期主义的事情。 ? ? ? ? Apipost?还包含了其他功能: ?????????1、回收站:Apipost回收站的意义是为了防止某些误删除操作导致的数据彻底丢失。 ? ? ? ? 2、控制台:Apipost控制台类似浏览器的console控制台。在这里可以进行查看请求的接口数据、查看脚本中的变量打印等。 ? ? ? ? 3、备份还原:接口数据备份后,可以在任何时候回退到指定版本。防止误操作的情况。 ? ? ? ? 4、自动生成代码:填写完接口请求参数后您就可以生成程序代码,包含了市场主流语言。 ? ? ? ? 5、Apipost脚本:Apipost脚本是基于JavaScript语言的代码片段,可实现在接口请求或集合测试时添加动态行为。 ? ? ? ? 6、测试流程:流程测试是针对一个接口集合的测试,选择相应的环境,可以作为一系列请求一起运行。 ? ? ? ? ?等等。 ????????如果你感兴趣,就快去试试吧。 ? ? ? ? Apipost官网地址:Apipost-API 文档、调试、Mock、测试一体化协作平台 ? ? ? ? Apipost Web地址:Apipost-基于协作,不止于API文档、调试、Mock ????????客户端下载地址:??????????????????????下载中心-Apipost-中文版接口调试与文档管理工具 |
|
开发测试 最新文章 |
pytest系列——allure之生成测试报告(Wind |
某大厂软件测试岗一面笔试题+二面问答题面试 |
iperf 学习笔记 |
关于Python中使用selenium八大定位方法 |
【软件测试】为什么提升不了?8年测试总结再 |
软件测试复习 |
PHP笔记-Smarty模板引擎的使用 |
C++Test使用入门 |
【Java】单元测试 |
Net core 3.x 获取客户端地址 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/17 22:39:29- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |