构建测试平台与对应的组织架构需要哪些能力?

简介: 腾讯、阿里、百度、华为等知名公司里的测试平台与测试产品越来越多,他们是如何做的,又有什么样的价值,来听思寒仔细给你解答。### 01我们先来说下测试平台这几年开始火爆的原因。随着DevOps与持续交付的成熟应用,交付速度越来越快,对测试的要求也会越来越高。很多测试团队中都有大量的测试过程需要执行,比如手工测试、UI自动化测试、接口自动化测试、性能测试、安全测试以及大量的非功能/专项测试

腾讯、阿里、百度、华为等知名公司里的测试平台与测试产品越来越多,他们是如何做的,又有什么样的价值,来听思寒仔细给你解答。

01

我们先来说下测试平台这几年开始火爆的原因。

随着DevOps与持续交付的成熟应用,交付速度越来越快,对测试的要求也会越来越高。很多测试团队中都有大量的测试过程需要执行,比如手工测试、UI自动化测试、接口自动化测试、性能测试、安全测试以及大量的非功能/专项测试。
在持续交付体系下同时还要覆盖多套环境,比如关键测试过程还需要在联调环境、测试环境、预发布环境、线上环境等多套环境里重复的执行测试验证。
在git flow管理模式下,我们还要自动化的对相关的branch、tag甚至是commit进行细粒度的测试。以前通过jenkins来实现持续集成的方式已经很难管理这么多复杂的测试过程和测试数据了,测试行业里需要更高效的测试形态。

随着数据分析、图像识别、机器学习/深度学习/人工智能等相关技术在测试行业的落地,越来越多的智能化测试的方式开始涌现。

比如基于图形识别的自动化测试、测试用例自动生成、自动遍历与自动探索测试、diff测试、精准测试、基于历史数据自动识别bug,修正bug等等,这些测试技术与能力需要有好的封装以提供给整个团队进行高效的应用。

随着测试能力越来越丰富与强大,有些测试能力可以输出到测试之外的团队。比如通过测试左移的技术去支撑研发的质量改进,通过测试右移支撑DevOps的平稳运行,通过质量监控支撑产品与运营能力。

甚至阿里系的部分团队已经做到了可以直接支撑用户服务,比如在产品上线后,让客户自查质量问题以实现让客户快速响应跟进产品变化。部分测试能力不再局限于具体的岗位职责,而是逐渐的以测试服务的形式去服务更多的团队。

02

上述的三个趋势,给我们带来了一些思考。作为测试工程师,在这个趋势里应该如何发挥更大的价值?作为测试管理层,又该如何建设自己团队的测试能力呢?我们可以从康威定律里获得一些解答。

根据康威定律,测试团队如果想快速的提升团队的生产力,可以从四个方向入手。

  • 增加沟通效率
  • 快速迭代
  • 根据产品组织团队
  • 拆分为小规模团队

如果要满足前面提到的测试服务化、测试智能化、测试中台化趋势,结合康威定律可以得出这样的几个结论

  • 通过成熟的测试产品,管理测试能力,降低应用门槛与沟通成本,从而最终提高测试效率
  • 通过快速小规模的技术改进与创新,实现测试服务的快速迭代与能力提升
  • 根据测试产品,来划分对应的测试团队,而不再简单的根据被测业务与职能。
  • 让测试团队与其他团队之间像微服务那样调用,团队规模尽量不要超过经典邓巴数(5/15)

如果把这几点连接起来,我们就得到了一个未来的测试发展模式雏形。多个5到15人的测试团队,构建各种测试能力,管理团队测试过程,并持续改进,实现对自身和周围团队的产品级支持,这样就可以大大提高测试生产力。

从以上的发展趋势里我们可以看到,测试行业需要一种便捷的测试能力管理方式。他要具备如下能力

  • 管理内部测试过程,让测试效率更高,流程更顺畅
  • 管理内部测试能力与测试数据,降低应用门槛与应用成本,提高对测试数据的利用以提高质量
  • 输出测试能力到外部团队,支撑整个团队的高效率高质量交付

大家可以明显的看到,产品化、SAAS化是可以很好的满足测试行业的发展诉求的,也很好的符合了康威定律。
其实在阿里、腾讯、百度、华为等公司,对应的测试平台已经越来越多,小到自动化测试平台、测试用例录制平台、mock服务平台,大到压测平台、精准测试平台等,都得到了非常多的应用。测试平台也逐渐成了很多测试团队,甚至是研发团队的一个重要业务。
整个测试行业先后经历了几个重要的测试发展形态

  • 人工测试阶段
  • 自动化测试框架阶段
  • 低代码测试工具阶段
  • 测试产品与测试服务平台阶段

每次的技术改进其实都是生产力飞跃的一次重要里程碑。

但是随着测试开发人群的崛起,人们对测试平台的打造已经进入了疯狂的阶段,很多设计错误的测试平台也喷涌而出,甚至还出现了一定程度的测试能力倒退。比如经典的行业反例

  • 使用数据库维护测试用例,失去了强大的git版本管理能力
  • 使用在线手工编写用例的方式,失去了良好的编程模型支持
  • 使用了面条式的测试用例关键字结构,既缺乏page object模式支持,又缺乏复杂逻辑支持

这些问题会导致测试平台与产品不但不能提高测试效率,还会让测试能力退步,把测试团队拖入了难以维护的深渊。

相关文章
|
5天前
|
运维 Kubernetes Docker
利用Docker和Kubernetes构建微服务架构
利用Docker和Kubernetes构建微服务架构
|
5天前
|
SQL 数据采集 分布式计算
【赵渝强老师】基于大数据组件的平台架构
本文介绍了大数据平台的总体架构及各层的功能。大数据平台架构分为五层:数据源层、数据采集层、大数据平台层、数据仓库层和应用层。其中,大数据平台层为核心,负责数据的存储和计算,支持离线和实时数据处理。数据仓库层则基于大数据平台构建数据模型,应用层则利用这些模型实现具体的应用场景。文中还提供了Lambda和Kappa架构的视频讲解。
【赵渝强老师】基于大数据组件的平台架构
|
1天前
|
传感器 算法 物联网
智能停车解决方案之停车场室内导航系统(二):核心技术与系统架构构建
随着城市化进程的加速,停车难问题日益凸显。本文深入剖析智能停车系统的关键技术,包括停车场电子地图编辑绘制、物联网与传感器技术、大数据与云计算的应用、定位技术及车辆导航路径规划,为读者提供全面的技术解决方案。系统架构分为应用层、业务层、数据层和运行环境,涵盖停车场室内导航、车位占用检测、动态更新、精准导航和路径规划等方面。
15 4
|
10天前
|
监控 前端开发 JavaScript
探索微前端架构:构建可扩展的现代Web应用
【10月更文挑战第29天】本文探讨了微前端架构的核心概念、优势及实施策略,通过将大型前端应用拆分为多个独立的微应用,提高开发效率、增强可维护性,并支持灵活的技术选型。实际案例包括Spotify和Zalando的成功应用。
|
8天前
|
监控 安全 测试技术
构建高效的精准测试平台:设计与实现指南
在软件开发过程中,精准测试是确保产品质量和性能的关键环节。一个精准的测试平台能够自动化测试流程,提高测试效率,缩短测试周期,并提供准确的测试结果。本文将分享如何设计和实现一个精准测试平台,从需求分析到技术选型,再到具体的实现步骤。
40 1
|
11天前
|
机器学习/深度学习 人工智能 自然语言处理
医疗行业的语音识别技术解析:AI多模态能力平台的应用与架构
AI多模态能力平台通过语音识别技术,实现实时转录医患对话,自动生成结构化数据,提高医疗效率。平台具备强大的环境降噪、语音分离及自然语言处理能力,支持与医院系统无缝集成,广泛应用于门诊记录、多学科会诊和急诊场景,显著提升工作效率和数据准确性。
|
8天前
|
监控 安全 测试技术
构建高效精准测试平台:设计与实现全攻略
在软件开发过程中,精准测试是确保产品质量的关键环节。一个高效、精准的测试平台能够自动化测试流程,提高测试覆盖率,缩短测试周期。本文将分享如何设计和实现一个精准测试平台,从需求分析到技术选型,再到具体的实现步骤。
28 0
|
3天前
|
缓存 负载均衡 JavaScript
探索微服务架构下的API网关模式
【10月更文挑战第37天】在微服务架构的海洋中,API网关犹如一座灯塔,指引着服务的航向。它不仅是客户端请求的集散地,更是后端微服务的守门人。本文将深入探讨API网关的设计哲学、核心功能以及它在微服务生态中扮演的角色,同时通过实际代码示例,揭示如何实现一个高效、可靠的API网关。
|
2天前
|
Dubbo Java 应用服务中间件
服务架构的演进:从单体到微服务的探索之旅
随着企业业务的不断拓展和复杂度的提升,对软件系统架构的要求也日益严苛。传统的架构模式在应对现代业务场景时逐渐暴露出诸多局限性,于是服务架构开启了持续演变之路。从单体架构的简易便捷,到分布式架构的模块化解耦,再到微服务架构的精细化管理,企业对技术的选择变得至关重要,尤其是 Spring Cloud 和 Dubbo 等微服务技术的对比和应用,直接影响着项目的成败。 本篇文章会从服务架构的演进开始分析,探索从单体项目到微服务项目的演变过程。然后也会对目前常见的微服务技术进行对比,找到目前市面上所常用的技术给大家进行讲解。
11 1
服务架构的演进:从单体到微服务的探索之旅
|
1天前
|
Cloud Native 安全 API
云原生架构下的微服务治理策略与实践####
—透过云原生的棱镜,探索微服务架构下的挑战与应对之道 本文旨在探讨云原生环境下,微服务架构所面临的关键挑战及有效的治理策略。随着云计算技术的深入发展,越来越多的企业选择采用云原生架构来构建和部署其应用程序,以期获得更高的灵活性、可扩展性和效率。然而,微服务架构的复杂性也带来了服务发现、负载均衡、故障恢复等一系列治理难题。本文将深入分析这些问题,并提出一套基于云原生技术栈的微服务治理框架,包括服务网格的应用、API网关的集成、以及动态配置管理等关键方面,旨在为企业实现高效、稳定的微服务架构提供参考路径。 ####
13 5