产品解读丨MeterSphere接口自动化测试的应用场景和实践

MeterSphere是一款开源的持续测试平台,提供接口测试、UI测试、性能测试等功能,帮助企业建立自动化测试体系。其接口自动化测试支持在线协作、可视化,降低自动化测试门槛,并能与DevOps流水线集成,实现持续测试。此外,MeterSphere的Mock服务解决服务依赖问题,版本管理促进测试用例重用,统一的测试平台助力企业进行测试治理和资产沉淀。

过去的十几年,DevOps运动在中国得到了大范围的推广与发展,也涌现出了很多DevOps社区,它们在深度和广度上都推动着软件交付模式的变革。尤其是新冠疫情以来,企业的数字化转型需求愈加强烈和迫切,软件的迭代交付也更为频繁,给软件质量的把控带来了新的挑战,也提出了更高的要求。

正是在这样的背景下,以及基于投入产出的效果考虑,软件从业者们都意识到了测试的必要性,尤其是以接口为基础的自动化测试的必要性。

在过去一段时间,我所接触到的测试同行们中,大家普遍拥有做自动化测试的共识,但也都面临着不同的难题。有的是在等待领导决策,需要一些量化的评估指标;有的是一直在不同的技术框架下尝试和选择,比较碎片化,没有形成统一的自动化测试平台;有的是基于某个开源框架,通过大量代码开发自主建设,却在长期维护上需要持续投入较大精力……

MeterSphere开源持续测试平台提供了测试跟踪、接口测试、UI测试、性能测试等一站式能力。尤其在接口测试上,基于B/S架构,将传统的单纯依托代码开发或JMeter这样的单体工具的测试方式,转变为在线协作、可视化、简单拖拽的方式来进行接口自动化测试,极大地降低了自动化测试的学习曲线和准入门槛,也为接口自动化测试的持续维护提供了工具支撑,赋予团队和组织将测试用例、测试数据、测试执行记录和测试结果沉淀为资产的能力。

MeterSphere接口自动化测试应用场景

  1. 建立自动化测试体系

对于正准备开拓接口自动化测试的团队,MeterSphere提供了从接口定义到单接口用例,再到跟业务场景关联的场景用例的测试业务逻辑。对于一些现有的测试脚本,支持通过导入的方式一键迁移到MeterSphere平台,实现无缝切换。

目前MeterSphere平台支持的导入源有MeterSphere、Postman、Swagger、HAR和JMeter。以Swagger为例,可以通过Swagger URL直接导入接口定义,并且支持定时同步,能在结果变化时,自动获取最新的接口定义。

在这里插入图片描述

通过这种在线可视化的交互,测试人员能快速上手,有利于接口自动化测试的开展与推广,从而帮助团队建立起自身的自动化测试体系,提升质量内建的能力。

  1. 企业级软件测试

现在有越来越多的企业比以往更加重视软件测试以及围绕测试所进行的质量保障活动,将测试纳入到端到端的软件研发体系建设中进行规划。企业级的软件测试要求既能满足传统的项目组织方式,又要能满足各种敏捷团队的测试需求,包括中小型敏捷团队和部落制敏捷团队。

MeterSphere持续测试平台所提供的“工作空间-项目”的组织和资源隔离机制,可以灵活满足不同规模企业的测试团队和项目组织的实践需要;而其提供的“角色-人员” 的权限机制,又能满足同一项目团队内部人员根据角色分工的不同分配不同权限的实际需要。

在这里插入图片描述

尤为重要的是,内部岗位变动和外部因素造成的人员流动是不可避免的,也是正常的。所谓“铁打的团队流水的兵”。统一的测试平台可以帮助企业建立统一的测试技术栈和测试执行工具,避免“百花齐放”的现象,为统一的测试流程建设和团队协作提供技术支撑。

  1. 持续测试

软件的持续交付往往具有轻量、快速、按需、频繁等特征,这同时要求测试具有可持续性,要能满足持续交付与持续发布的要求。

MeterSphere作为以“持续测试”为定位的平台,不仅本身支持自动化测试,赋能测试人员专注于测试用例的设计、维护、执行与反馈,同时支持DevOps平台对自动化测试用例的远程触发和定时触发,将测试平台融入到DevOps的流水线当中去,真正实现开发、测试、反馈的持续交付闭环。

在这里插入图片描述

由于MeterSphere提供标准的RESTful API接口,无论是广泛使用的Jenkins、GitLab这类开源CI工具,还是诸如Azure DevOps和云效的商业DevOps平台,亦或其他各类研发管理平台的流水线均可以调用MeterSphere的自动化测试用例、测试场景和测试计划。项目团队可以根据各自项目的特点和需求,在设计自己DevOps流水线的时候,灵活组合并调用相关的自动化测试用例。

  1. 挡板测试

现代软件功能越来越丰富,导致服务间依赖和调用也越来越多。服务间依赖主要分两种情况:一是软件本身的架构,越来越多地采用微服务架构,不同的服务可能会由不同的团队负责,而不同团队之间的进度差异很可能无法满足本项目团队的测试要求,进而导致测试处于阻塞状态;另外一种情况可能是由于功能上的需求,软件需要调用一些外部服务,例如地图服务、通知服务、OCR服务、大数据服务、物联网服务等,这既可能是由于内外网隔离的网络原因,也可能是由于这些外部服务相对更不可控,出于稳定性考虑的原因。

在这里插入图片描述

MeterSphere Mock服务可以根据用户输入的请求参数、返回数据来生成Mock接口。这些接口会自动生成模拟数据,覆盖用户的一些测试需求。同时,Mock期望可以根据设置的请求触发条件进行过滤,返回期望的数据。

  1. DevOps评级

信通院发布的《研发运营一体化(DevOps)能力成熟度模型》第三部分“持续交付”对测试管理和自动化测试提出了明确的要求,包括自动化设计、自动化开发、自动化执行、自动化分析等几方面。

该能力成熟度模型指出,自动化测试需要建立统一的自动化测试框架,统一管理自动化测试用例,需要对接口与服务采用自动化测试,能由流水线自动触发,并且对自动化测试结果要具备较强的自动判断能力。

目前,MeterSphere开源持续测试平台已经对业界普遍期望的DevOps评级进行了针对性的支持。例如加入了“误报库”,测试人员可以对网络、环境等非应用原因导致的失败设置相应的规则,在自动化用例执行的过程中,由系统根据误报规则进行自动判断和标记。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值