微信号:gh_1cb598337696

介绍:Qtest,是360公司唯一的服务端测试团队.我们的理念是做一个会编程的测试工程师,做一个不断思考,全力保证产品质量的测试工程师.

接口测试平台的正确打开姿势

2018-02-09 18:26 三剑客团队

点击蓝字关注这个神奇的公众号~

背景介绍


去年年中三剑客对外开放之后,陆续收到公司内外多个团队对三剑客的关注,所以笔者在此对三剑客做一个整体介绍,后续系统开发进展都会由此公众号推出,敬请关注。

这篇文章主要从以下两个方面展开阐述:

1、为什么要选择接口测试

2、三剑客接口测试平台的工具化解决思路

为什么要选择接口测试

移动互联网时代APP和微服务快速发展,架构方面现在绝大多数企业和团队都是偏向以接口的方式连接Client与Server,呈现了轻客户端重服务端的特点;另外,传统PC端和服务端也在趋向于前后端分离和以接口提供服务的平台化方向发展,因此RD、FE和QA围绕接口管理、开发与测试的工作越来越多。然而在实际工作中,由于项目快速迭代、接口数量急剧增大,对接口的管理与测试工作也带来了诸多挑战,成为近年IT领域,尤其是测试相关领域讨论的最热门话题之一。

那么,围绕接口开发以及测试管理过程,到底有哪些痛点或者问题呢?总的来说,大家或多或少可能都遇到过下面的几个问题:

  • 没有接口文档或者接口文档管理不规范

如果没有接口文档,在项目对接的时候会带来极大的沟通成本,接口测试更是无从谈起。即便有,大多数也是word、wiki等形式,不易保管,很容易丢失;

  • 接口数据Mock环境搭建麻烦

很多情况下,由于各端开发进度不一致,为了尽快调试接口,通常会用到Mock技术,但往往搭建比较麻烦;

  • 接口手工测试效率不高

互联网发布节奏越来越快、待测接口越来越多,如果每次上线都通过手工去执行用例,无疑会累吐血,而且时间上也不允许;

  • 接口上线后总是怕出错

目前很多业务团队的接口都至关重要,尤其是收入性的接口,线上哪怕是1分钟的异常也可能造成可观的损失,需要时刻监控接口运行情况;

因此,在接口文档管理、数据Mock、接口自动测试以及线上业务级监控方面,都存在大量需要解决的问题。

那么,对于这些问题,有什么工具化的解决方案吗?

调研了市面上的几款工具,发现都不能很好的解决业务中的实际问题,原因有:

  • 没有一个覆盖需求、开发、测试、上线等全流程的接口测试工具,而我们想要做的是从接口文档的管理开始,在联调测试阶段能够直接将接口转至Mock平台使用、在测试阶段转化为自动测试用例进行执行、上线后转化为线上接口进行监控的这么一条龙的服务;

  • 现在很多接口测试工具都是基于代码架构,需要编写代码实现,或者对业务代码有侵入性,而我们希望的是无需编写任何代码,且对业务代码零入侵。

基于以上原因,团队着手开发了三剑客接口测试平台。


三剑客接口测试平台的工具化解决方案

三剑客接口测试平台(外网地址:http://jiekouceshi.com/)是集接口文档管理数据Mock功能与自动化测试性能测试线上监控技术资讯为一体的可视化接口测试与管理平台,贯穿了软件研发的各个阶段,让开发以及测试人员能够一站式高效率完成接口的管理以及开发、连调、测试、监控工作,能够节省大量的时间以及技术成本。三剑客接口测试平台包含众多子系统,每个子系统都能解决什么问题呢?

APIManager-接口文档管理

APIManager提供了接口文档的在线撰写与管理功能,规范了接口文档,为测试和第三方系统提供非常清晰、准确的结构化接口信息,大大降低了维护成本。在需要给别人接口文档时,只需要分享出来,就会生成单独的接口文档链接,非常方便。并且该子系统独创了接口时间轴的概念,保留所有修改历史记录,并且在接口变更时,能够实时通知干系人,有效规避了接口修改可能导致业务失效的风险。

Xmock-接口数据模拟

Xmock提供可视化的模拟接口数据返回,让RD和FE、第三方等并行开发测试变得更容易。Xmock支持http、https接口模拟,并且提供了丰富的url匹配方式,可以通过设置参数表达式、部分正则表达式,达到模拟的多样化,且支持延时响应等特殊需求,后续还会增加可供自定义的处理逻辑。整个Mock过程只需要在线录入真实的接口信息,然后配置hosts即可访问,对项目代码实现了零入侵,并且跨平台通用。

Automate-接口自动测试

Automate实现了web页面管理接口用例数据并实施一键接口自动化测试,包括接口单host执行以及多host轮询执行,可以实现线上单接口多服务器的一键回归。Automate支持非常丰富的断言形式以及回调处理,同时采用jsonPath能对json格式的返回数据做非常精细的断言,支持多种断言类型。Automate提供了用例以及用例集的管理和美观的测试报告,能够清楚看到当前的执行状态,以及错误详细说明。此外还提供web版Postman,相比google postman,它的优点是汉化、无需安装,而且后面还会免费支持团队协作。后续Automate还会根据接口文档快速生成接口用例并批量执行,甚至对接持续集成系统,每天定时运行。

Ialert-接口在线监控

Ialert提供了7*24小时的业务级在线监控预警功能,在平台中可以随意控制监控频率以及断言方式,能够将业务方的接口异常发现时间控制在分钟级别。除此之外,Ialert还实现了接口的加密请求处理,让包含如BASE64、MD5、RSA等加密方式的复杂请求监控变的非常简单易用。最近Ialert屡次立功,好几次都及时发现了接口异常的情况。

联系我们

三剑客接口测试平台提供了专业的一站式接口测试解决方案,同时我们的功能还在持续优化和增加中,欢迎各位同仁访问使用并给出宝贵的意见和建议!

三剑客的后续动态更新都会在本公众号第一时间发布,感兴趣的同学可以关注~

附系统外网地址:http://jiekouceshi.com/

QQ交流群:450984883

反馈邮件请发送至:help@jiekouceshi.com‍


Qtest是360旗下的专业测试团队!

是WEB平台部测试技术平台化、效率化的先锋力量!



陪伴是最长情的告白

每日为你推送最in的测试技术

识别二维码

关注我们


 
Qtest之道 更多文章 聊一聊TCP协议的TIME_WAIT与性能优化 充电两分钟|shell脚本入门so easy 推荐引擎介绍 Android ANR监测方案解析 jenkins调用webdriver问题详解
猜您喜欢 JavaEE就业12期平均薪资8064元,毕业28个工作日,就业率84.51% Java成为最受世界 500 强企业青睐的语言,你还不学? 搭建 kubernetes 容器编排平台 【典型算法】SVD Go 性能优化技巧 8\/10