随着测试左移思想的引入, API (应用程序编程接口)经济的飞速增长导致对 API 管理平台的需求相应增加。越来越多的企业注重并关注接口测试。单纯的做接口测试或者做好接口测试的本质工作其实并不复杂; 我们可以借助接口测试工具辅助我们的工作,或者自己编写代码维护核心接口自动化脚本,单一的来看这些工作的话其实要做到这些并不难,难得是想要把整个过程流程化,规范化可能我们需要花费一定的时间去梳理和制订,下面是我们在测试过程中经常会遇到的一些问题和建议,我把这些整理出来,希望可以对大家起到一些建议性的帮助和正确的引导。

API 文档管理繁琐

目前现状:

  • API 数量,协议,规范众多

  • 编写文档麻烦,协作效率下降

  • 项目维护成本增加

规范化 API 管理的好处:

统一的 API 文档有助于减少项目维护和沟通成本,无论什么项目、什么人编写什么 API ,系统都可以保证 API 文档的可读性,方便后续维护和团队协作。有一款方便管理、查阅 API 文档,提高日常代码( CV )效率,如果有一款 API 文档管理工具可以大大提高工作效率和高质量交付工作。

API 版本管理弱

目前现状:

  • API 变更通知不及时

  • 缺少版本管理和对比手段

  • 管理人员对 API 管理的痛点

a. 无法随时清晰的了解当前进度的状态:

Manager 无法从代码层面清晰的看到开发进度,需求排期的情况,是否已经到达提测阶段,是否已经对接和发布都缺少一个平台展示。

b. 发现问题总是滞后

让开发团队编写进度说明比编写开发文档更难,由于缺乏了解问题的渠道,只能通过开会的方式,口头了解问题。但是当问题被说出来时,其实早已滞后了。

以上两个问题不难发现:项目进度管理工具并不完全适用于研发工作,如何规范开发行为、判断开发质量、帮助团队沟通的协作,这些日常问题依然得要人力介入,效果并不好。

管理缺乏工具,针对研发工作需要有深入参与研发的管理工具才行。

管理 API 变更历史:

通过 API 变更通知、 API 评论、 API 版本管理等功能促进团队高效协作,构建敏捷团队。

API 开发协作慢

目前现状:

  • 前/后端、测试的工作需要互相等待,无法高效合作;主要体现在以下方面:

a. 前端开发进度受制于后端:单纯API文档缺乏 Mock API ,前端需要等待后端开发完成才能拿到测试数据,自己构造测试数据费时费力。

b. 反复沟通浪费时间:由于文档滞后于代码,而开发经常在开发最后才完善文档,导致前后端对接需要反复沟通确认。

c. 缺少统一沟通平台:如果 API 出现了什么问题,只能在内部通讯工具交流,既没有存档,也不便于多人协作。

d. 文档变更不通知:后端开发改了代码和接口习惯于口头沟通,而不是通过文档明确地指出修改的内容,导致后期沟通成本高昂。

e. 文档阅读体验差:文档不标准、内容不清晰、平台不统一等问题导致最终文档效果也不好,体验越差越不维护,导致破窗效应。

f. 接口测试不方便:需要看着接口文档再另外使用工具进行测试,如果接口发生了变化,写好的测试也作废了,增加了重复工作量。

帮助团队内部进行协作,共享劳动成果:

团队之间没有参与任何沟通协作的内容,缺乏API定义、测试、协作的主动权。

测试维护成本高

目前现状:

  • 维护测试麻烦,每次改动 API 都需要手动维护测试用例

  • 测试时间完全不够充分;主要体现在:

a. 测试工作重复:需要看着接口文档再另外使用工具进行测试,如果接口发生了变化,写好的测试也作废了,增加了重复工作。

b. 工作成果无法分享:每个测试人员都用单机测试工具编写测试脚本,但却没法共享和协作。

c. 测试工作不自动化:一直希望促进自动化测试,但是没有真正运作起来,每天“点点点”依然消耗大量测试团队的精力。

d. 测试效果无法量化:无法准确了解测试效果,没人可以说清今天、昨天、上周、这个月的测试情况如何,和之前比有何改进。

e.** 测试工作被动**:测试总是排在最后进行,无法参与项目讨论,无法进行快速大范围回归测试,甚至无法按时完成测试任务,导致项目延期或带着忐忑上线。

引入管理 API 测试用例工具:

将文档和测试关联起来有助于减少 API 测试和维护测试用例的时间,不再需要一边对照 API 文档,一边打开其他的工具来测试。提高测试人员的工作效率。所有 API 测试数据、用例、报告都在平台中统一管理,减少测试团队的重复工作,让团队成员可以共享工作成果。

自动化测试难

目前现状:

传统 API 自动化测试工具上手门槛高,对成员水平要求高,无法快速在团队推广 API 自动化测试经常受到测试人员编码水平等因素的影响,难以大范围和高效实施。 Eolink 提供的 API 自动化测试可以不编写代码,测试人员进行简单的培训后即可编写复杂的测试用例,通过自动化取代手工来进行重复的 API 测试。

Eolink 工具可以帮助测试团队提高测试效率和测试覆盖率。

以上的问题你在工作中遇到过吗?请问是怎么处理和优化过程的呢?

说出你的心得和感受,请在下面的评论区给我留言互动。

图中所使用的的接口管理工具是eolink,感兴趣可以自行使用:www.eolink.com

传统 API 管理与测试过程正面临严峻的挑战的更多相关文章

  1. API管理之YApi实现前后端高度分离

    全手打原创,转载请标明出处:https://www.cnblogs.com/dreamsqin/p/11972789.html,多谢,=.=~ 背景描述   前后端分离已成为互联网项目开发的业界标准使 ...

  2. 基于SpringCloud的Microservices架构实战案例-在线API管理

    simplemall项目前几篇回顾: 1基于SpringCloud的Microservices架构实战案例-序篇 2基于SpringCloud的Microservices架构实战案例-架构拆解 3基于 ...

  3. 选择API管理平台之前要考虑的5个因素

    API(应用程序编程接口)经济的飞速增长导致对API管理平台的需求相应增加. 这些解决方案可在整个生命周期内帮助创建,实施,监控,分析,保护和管理API. 据一些估计,全球API管理市场预计在2018 ...

  4. API 管理在云原生场景下的机遇与挑战

    作者 | 张添翼 来源 | 尔达Erda公众号 ​ 云原生下的机遇和挑战 标准和生态的意义 自从 Kubernetes v1.0 于 2015 年 7 月 21 日发布,CNCF 组织随后建立以来,其 ...

  5. API管理工具介绍

    ​ 时间都去哪里了 敏捷迭代和团队协作,前后端分离的工作模式几乎是每个互联网公司的常规工作模式. 前后端分离,各自开发的优点很多,其中一项是它只需要提供一个统一的API接口,即可被web,iOS,An ...

  6. FREE 开源 API 管理工具等

    最近学习API 管理工具,发现几个不错的东西,记录如下: 1.IBM 收购NODE 厂家  STRONGLOOP 有一产品LOOPBACK,开源,好! 2.apigee  api管理平台 也不错. 3 ...

  7. 论元数据和API管理工具

    公司里面的很多部门都在广泛的采用元数据管理,也采用了公司内部开发的元数据管理工具,有些部门的实施效果一直非常好,而有些部门的效果则差强人意.这个问题,其实和软件系统开发完成进入维护阶段后成本居高不下的 ...

  8. API 管理工具

    API 管理工具 你还苦于无法有效的管理大量的API吗?今天给大家介绍一款API的管理工具.这款工具可以免费使用,虽然中途可能会提示你购买,但并不影响我们的使用. 下载地址: Windows:http ...

  9. Api管理工具(spring-rest-docs)

    对于app开发来说,必须需要有相应的api文档,一般最基础的就是用markdown工具来撰写api文档.当对于开发人员来说,是总会想着寻找更方便撰写,测试,对接前端开发的文档生成的工具. 其实这方面的 ...

随机推荐

  1. Azure Terraform(十一)Azure DevOps Pipeline 内的动态临时变量的使用

    思路浅析 在我们分析的 Azure Terraform 系列文中有介绍到关于 Terraform 的状态文件远程存储的问题,我们在  Azure DevOps Pipeline 的 Task Job ...

  2. Linux 运维请务必收藏~ Nginx 五大常见应用场景

    关注「开源Linux」,选择"设为星标" 回复「学习」,有我为您特别筛选的学习资料~ Nginx 是一个很强大的高性能 Web 和反向代理服务,它具有很多非常优越的特性,在连接高并 ...

  3. 4.文件共享总结上篇-Windows之间文件共享

    本文章包含上篇和下篇两部分,今天我们主要讨论Windows系统之间的文件互访 Windows系统之间文件互传 1)利用Windows自带的文件共享服务 本次试验以Win7为服务器端,win10为客户端 ...

  4. openstack命令创建云主机实例

    @ 目录 前言 上传centos镜像 创建实例 创建外网卡 修改安全组规则 创建云主机实例 前言 简单创建云主机实例只需要上传一个测试镜像.创建一张外网卡.创建一个实例类型.修改安全组规则即可 注:这 ...

  5. Java 对象头那点事

    概览 对象头 存放:关于堆对象的布局.类型.GC状态.同步状态和标识哈希码的基本信息.Java对象和vm内部对象都有一个共同的对象头格式. (后面做详细介绍) 实例数据 存放:类的数据信息,父类的信息 ...

  6. 【深入理解计算机系统CSAPP】第六章 存储器层次结构

    6 存储器层次结构 存储器系统(memory system)是一个具有不同容量.成本和访问时间的存储设备的层次结构.CPU 寄存器保存着最常用的数据.靠近 CPU 的小的.快速的高速缓存存储器(cac ...

  7. MTK 虚拟 sensor bring up (pick up) sensor2.0

    pick up bring up sensor2.0 1.SCP侧的配置 (1) 放置驱动pickup.c (2) 添加底层驱动文件编译开关 (3) 加入编译文件 (4) 增加数据上报方式 (5)修改 ...

  8. 如何把你的 Android 使用得像 Linux

    前言 最近在学校里上课,老师讲的东西又听不进去,手里只有一个手机和一个平板,之前还可以用 ssh 连接云服务器玩点东西,但是我是用的软件 Juice ssh 并不是很友好,退出到后台一段时间后竟然会自 ...

  9. SpringCloud 简介

    目录 什么是微服务? 初识 SpringCloud SpringCloud VS Dubbo 什么是微服务? <互联网系统架构演变> "微服务"一词源于 Martin ...

  10. CF1665A GCD vs LCM