关闭

接口自动化实践:智能场景自动巡检

发表于:2022-8-19 09:33

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:绿豆芽呀    来源:51Testing软件测试网原创

  背景
  在介绍接口自动化之前先给大家分享一下我所理解的“业务中台”的概念:业务中台是将企业的核心能力以数字化形式沉淀为各种服务中心,其目的是“提供企业能够快速,低成本创新的能力”。
  业务中台的核心是“构建企业共享服务中心”,所以业务中台提供的能力,往往是通用、共用的,涉及多个业务线或者多个应用共同使用,属于基础建设的能力。
  例如公司内部的业务a、业务b同时有订单、登录等功能,可以将这部分功能抽离剥出,形成一个公共的能力,供不同的业务使用。在订单或登录功能出现变更时,可直接更新中台服务即可,业务侧在非必要情况下无需同步更新。
  基于业务中台的概念下,就很经常出现一个情况,中台提供的接口实际是正常的,但是业务侧在聚合使用时,可能出现由于业务侧自身的部分接口异常,导致用户使用该功能出现异常。
  此时用户反馈可能根据该页面功能模块直接反馈到中台,但是经过一系列定位下来后发现,其实非业务中台侧的报错。
  除了上述反馈的问题现象外,作为中台服务(服务端)层的测试人员,做UI自动化明显会与业务侧的巡检产生大面积的耦合,所以我们可以通过接口自动化来完成后端服务的功能巡检。
  接口自动化
  单接口自动化
  很多公司都有单接口自动化,主要用于确保接口可调用成功,确保后端服务的接口不能报错,无法真实的模拟业务侧用户的实际操作行为,可能存在因为某个接口异常从而导致用户无法使用某个功能。
  聚合接口自动化
  聚合接口自动化的目的在于,模拟用户真实操作行为,提前梳理沉淀该功能涉及的全部接口,包含业务侧接口、业务中台接口以及接口之间的依赖关系,通过将用户行为涉及到的接口全部聚合在一起完成的自动化巡检,提前发现由于后端服务异常导致用户功能使用异常的场景。
  当然如果业务侧有做UI自动化巡检,那我们接口巡检的时机可与业务侧错开来,提高巡检的频率,提早发现问题。
  这边给大家简单分享下我在项目中是如何做聚合接口自动化巡检的。
  高效智能接口场景自动巡检方案
  步骤1:梳理某个功能涉及到的所有接口
  以流程图的形式梳理某个功能所涉及到的所有接口,以及接口之间的依赖关系,以“订单功能”为例,梳理普通客户下单的前置操作和后置操作相关的接口依赖,其中:
  1.前置操作包括:用户登录成功、获取商品列表、打开指定商品详情等。
  2.后置操作包括:用户创建订单后发起订单支付、支付成功等。
  下图为普通用户创建订单涉及到的基础接口依赖关系(仅供参考):
  根据图中涉及到的接口,获取到对应的接口文档,选择自己熟悉的自动化框架,完成业务场景接口自动化脚本。
  步骤2:选择合适的告警通知方式
  确认告警通知方式:邮件、钉钉机器人等,建议根据公司内部惯用的方式进行通知。
  例如有的公司习惯使用邮件来进行相关工作通知,那么你就可以选择通过邮件来告警通知相关人员;如果公司内部使用钉钉作为内部的沟通交流方式,那可以直接使用的钉钉机器人进行巡检预警。
  这边给大家简单展示机器人的创建:
本文源自第六十七期《51测试天地》
《接口自动化助力完成业务场景巡检》一文
查看更多精彩内容,请点击下载:
  版权声明:本文出自《51测试天地》第六十七期。51Testing软件测试网及相关内容提供者拥有51testing.com内容的全部版权,未经明确的书面许可,任何人或单位不得对本网站内容复制、转载或进行镜像,否则将追究法律责任。
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号