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

简介: 腾讯、阿里、百度、华为等知名公司里的测试平台与测试产品越来越多,他们是如何做的,又有什么样的价值,来听思寒仔细给你解答。### 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模式支持,又缺乏复杂逻辑支持

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

相关文章
|
1月前
|
人工智能 数据可视化 测试技术
AI测试平台自动遍历:低代码也能玩转全链路测试
AI测试平台的自动遍历功能,通过低代码配置实现Web和App的自动化测试。用户只需提供入口链接或安装包及简单配置,即可自动完成页面结构识别、操作验证,并生成可视化报告,大幅提升测试效率,特别适用于高频迭代项目。
|
28天前
|
人工智能 监控 测试技术
告别只会写提示词:构建生产级LLM系统的完整架构图​
本文系统梳理了从提示词到生产级LLM产品的八大核心能力:提示词工程、上下文工程、微调、RAG、智能体开发、部署、优化与可观测性,助你构建可落地、可迭代的AI产品体系。
334 51
|
26天前
|
机器学习/深度学习 人工智能 搜索推荐
从零构建短视频推荐系统:双塔算法架构解析与代码实现
短视频推荐看似“读心”,实则依赖双塔推荐系统:用户塔与物品塔分别将行为与内容编码为向量,通过相似度匹配实现精准推送。本文解析其架构原理、技术实现与工程挑战,揭秘抖音等平台如何用AI抓住你的注意力。
339 7
从零构建短视频推荐系统:双塔算法架构解析与代码实现
|
1月前
|
消息中间件 缓存 监控
中间件架构设计与实践:构建高性能分布式系统的核心基石
摘要 本文系统探讨了中间件技术及其在分布式系统中的核心价值。作者首先定义了中间件作为连接系统组件的"神经网络",强调其在数据传输、系统稳定性和扩展性中的关键作用。随后详细分类了中间件体系,包括通信中间件(如RabbitMQ/Kafka)、数据中间件(如Redis/MyCAT)等类型。文章重点剖析了消息中间件的实现机制,通过Spring Boot代码示例展示了消息生产者的完整实现,涵盖消息ID生成、持久化、批量发送及重试机制等关键技术点。最后,作者指出中间件架构设计对系统性能的决定性影响,
|
1月前
|
SQL 弹性计算 关系型数据库
如何用读写分离构建高效稳定的数据库架构?
在少写多读业务场景中,主实例读请求压力大,影响性能。通过创建只读实例并使用数据库代理实现读写分离,可有效降低主实例负载,提升系统性能与可用性。本文详解配置步骤,助你构建高效稳定的数据库架构。
|
24天前
|
Cloud Native Serverless API
微服务架构实战指南:从单体应用到云原生的蜕变之路
🌟蒋星熠Jaxonic,代码为舟的星际旅人。深耕微服务架构,擅以DDD拆分服务、构建高可用通信与治理体系。分享从单体到云原生的实战经验,探索技术演进的无限可能。
微服务架构实战指南:从单体应用到云原生的蜕变之路
|
3月前
|
缓存 Cloud Native Java
Java 面试微服务架构与云原生技术实操内容及核心考点梳理 Java 面试
本内容涵盖Java面试核心技术实操,包括微服务架构(Spring Cloud Alibaba)、响应式编程(WebFlux)、容器化(Docker+K8s)、函数式编程、多级缓存、分库分表、链路追踪(Skywalking)等大厂高频考点,助你系统提升面试能力。
177 0
|
10月前
|
弹性计算 API 持续交付
后端服务架构的微服务化转型
本文旨在探讨后端服务从单体架构向微服务架构转型的过程,分析微服务架构的优势和面临的挑战。文章首先介绍单体架构的局限性,然后详细阐述微服务架构的核心概念及其在现代软件开发中的应用。通过对比两种架构,指出微服务化转型的必要性和实施策略。最后,讨论了微服务架构实施过程中可能遇到的问题及解决方案。
|
11月前
|
Cloud Native Devops 云计算
云计算的未来:云原生架构与微服务的革命####
【10月更文挑战第21天】 随着企业数字化转型的加速,云原生技术正迅速成为IT行业的新宠。本文深入探讨了云原生架构的核心理念、关键技术如容器化和微服务的优势,以及如何通过这些技术实现高效、灵活且可扩展的现代应用开发。我们将揭示云原生如何重塑软件开发流程,提升业务敏捷性,并探索其对企业IT架构的深远影响。 ####
279 3

热门文章

最新文章