测试开发之自动化篇-为什么是接口自动化测试?

原创
🍪
陈琦
2022-09-06 09:00:00
3115
摘要:随着移动应用的普及、微服务和Web前后端分离模式的广泛应用,客户端的表现层交互同服务端的业务处理之间,在系统架构层面做了更为清晰的逻辑划分,接口层面拥有了更多的测试机会。

近年来,随着DevOps敏捷过程越来越广泛地被采用,软件测试、特别是自动化测试得到了迅速的发展。


“软件自动化测试金字塔模型”将可自动化的测试自底而上分为单元测试、服务接口测试和界面自动化测试三个部分。正立的金字塔结构建议我们开展更为广泛的单元测试,以期获得更早发现问题和更高执行效率带来的收益,但不断增加的单元测试也会显著提高开发资源的投入。随着趋于顶部更多的UI层面自动化测试的开展,我们可以获得更高的累积测试覆盖率,但频繁的用户界面调整会带来更高的脚本维护工作量,自动化测试的投入产出比也将逐步收敛。

近年来,随着移动应用的普及、微服务和Web前后端分离模式的广泛应用,客户端的表现层交互同服务端的业务处理之间,在系统架构层面做了更为清晰的逻辑划分。因此,在接口层面拥有了更多的测试机会。借助接口测试,我们可以:

  • 模拟客户端用户操作引发的全部业务场景处理调用;
  • 覆盖系统所有无状态、有状态微服务的API接口访问;
  • 拥有更为明确和稳定的协议层输入到输出的对应预期;
  • 完成必不可少的向前兼容老版本服务API的回归测试;
  • 适当减少过多单元测试带来的开发技术资源投入成本;
  • 规避产品界面频繁调整带来的UI测试脚本的维护成本。


Q: 为什么接口自动化测试在项目管理中重要? A: 接口自动化测试可以通过模拟业务场景和覆盖微服务API,提升测试效率并降低开发和维护成本。


Q: 如何使用禅道或类似的项目管理软件进行自动化测试的bug管理? A: 项目管理软件如禅道可用于记录和跟踪自动化测试中发现的bug,支持敏捷开发流程和高效问题管理。


Q: 接口自动化测试如何支持敏捷开发工具的使用? A: 接口自动化测试有助于快速识别问题和验证功能,为敏捷开发工具提供稳定的测试反馈,支持持续集成和交付。

推荐阅读

测试开发之单元测试-基于Jacoco的单元测试代码覆盖率统计

本文中介绍的Jacoco是一款流行的开源Java代码覆盖率工具,可以进行代码覆盖率统计。
🍪
陈琦
2023-05-23

测试开发之系统篇-Docker容器安装

前面文章我们讲到,容器是运行在宿主机上的一个进程,多个容器之间使用同一个宿主机上的操作系统内核。此处以Ubuntu20.04系统为例,介绍Docker容器引擎的安装过程。 安装 安装依赖。 sudo apt update sudo apt install apt-transport-https ca-certificates curl gnupg-agent softwar...
aaronchen2k 2021-07-20

测试开发之网络篇-问题定位

我们在测试工作中,时常遇到某个产品网站或服务连不上的问题。借助前面了解的网络相关知识,可以从以下几个视角进行初步的问题排查。 ping网站域名,确认是否是DNS解析的问题; 通过域名访问内网服务时,先确认hosts文件是否配置了域名映射; ping网站IP地址,检查到目标服务器的网络连通性; telnet IP+端口,确认远程服务是否可达; 有条件的去服务器上执行...
aaronchen2k 2021-05-25

当DevOps落地实施撞上技术债务,如何量化债务突破困局

如何解决DevOps落地时遇到的技术债问题?
🌻
专栏作者·李斌
08-11
返回顶部
刘璐
高级客户经理
18562550650
2845263372
统一服务热线 4006-8899-23
我要提问提问有任何问题,您都可以在这里提问。问题反馈反馈点击这里,让我们聆听您的建议与反馈。