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

近年来,随着移动应用的普及、微服务和Web前后端分离模式的广泛应用,客户端的表现层交互同服务端的业务处理之间,在系统架构层面做了更为清晰的逻辑划分。因此,在接口层面拥有了更多的测试机会。借助接口测试,我们可以:
- 模拟客户端用户操作引发的全部业务场景处理调用;
- 覆盖系统所有无状态、有状态微服务的API接口访问;
- 拥有更为明确和稳定的协议层输入到输出的对应预期;
- 完成必不可少的向前兼容老版本服务API的回归测试;
- 适当减少过多单元测试带来的开发技术资源投入成本;
- 规避产品界面频繁调整带来的UI测试脚本的维护成本。
推荐阅读
测试开发之系统篇-Docker容器安装
前面文章我们讲到,容器是运行在宿主机上的一个进程,多个容器之间使用同一个宿主机上的操作系统内核。此处以Ubuntu20.04系统为例,介绍Docker容器引擎的安装过程。 安装 安装依赖。 sudo apt update sudo apt install apt-transport-https ca-certificates curl gnupg-agent softwar...
2021-07-20
测试开发之网络篇-问题定位
我们在测试工作中,时常遇到某个产品网站或服务连不上的问题。借助前面了解的网络相关知识,可以从以下几个视角进行初步的问题排查。 ping网站域名,确认是否是DNS解析的问题; 通过域名访问内网服务时,先确认hosts文件是否配置了域名映射; ping网站IP地址,检查到目标服务器的网络连通性; telnet IP+端口,确认远程服务是否可达; 有条件的去服务器上执行...
2021-05-25
2022-09-06 09:00:00
3115


aaronchen2k 










