关闭

云原生的测试挑战——云原生测试实战(2)

发表于:2024-2-08 07:43

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:孙高飞    来源:51Testing软件测试网原创

  1.2 云原生的测试挑战
  云原生与传统的软件设计方式截然不同,这为测试人员带来了新的挑战,具体有以下几方面的挑战。
  容器领域的知识储备:在国内,容器技术于2015年崛起,当年Docker成为每个相关领域的技术大会都在谈论的话题。但在当时,行业内更多是把容器技术看作运维领域要解决的问题,所以即便到现在,测试人员对于容器技术的知识积累也仍然有限,想在市面上招聘一名精通容器技术的测试人员仍然十分困难。但在云原生越来越流行的今天,很多测试活动都必须在容器环境下开展,知识储备的不足已经成为测试人员非常大的问题。
  高可用测试:传统软件迁移到云原生架构中往往需要做出比较大的改造,这些改造对于软件功能的影响往往比较小,但很多潜在的高可用问题比较难发现。每种云平台都会为用户提供各种高可用的设计来帮助用户减少开发成本,而这些高可用的设计与传统软件的高可用设计也会“碰撞”出很多难以预测的“火花”。同时,云原生在为容器注入故障方面也与传统方式有着很大的不同,这些都为测试人员带来了更多的挑战。
  性能测试与对应的监控系统:在传统的性能测试中,测试人员更关注服务的各项性能指标,基本不会关注服务的资源配额是否合理,或者说在有些传统的软件架构中,可能就没有“配额”这个概念。而在云原生领域,技术人员需要为每个服务设置对应的资源配额,而且设置资源配额有很多种策略。测试人员除了要保证服务的性能符合预期,还需要验证给服务设置的资源配额是否合理,这就出现了一种新的测试类型—容量测试。同时,云原生往往伴随微服务架构,这意味着一个系统中会存在大量的服务,测试人员熟悉的传统监控方式无法满足云原生的测试需求(想象一下,每次测试都需要收集几百个服务的所有资源的使用情况,将是一件多么恐怖的事)。所以,这需要测试人员学习云原生时代最流行的监控系统,并开发对应的性能数据自动收集组件。
  稳定性测试与对应的监控系统:云平台一般有很强大的自愈能力,正是因为运用了容器技术,在服务崩溃后云平台可以立即发现并将该服务重新调度到可用节点。很多时候服务中断时间很短,测试人员可能根本感知不到服务曾经出现过问题。这对测试人员来说是不友好的,很多由软件设计引起的崩溃问题测试人员往往很难发现。尤其是在云平台上,大量的容器运行在同一台服务器中,很多团队会选择各种超卖策略来提升资源利用率,这也会导致服务互相影响,让系统变得不稳定。所以,能让测试人员感知到这种瞬时的异常事件,并把定位排查的信息收集到一起的监控系统十分重要。测试人员需要开发这样的监控系统并基于此来设计对应的稳定性测试场景。
  边缘计算:边缘计算在近些年也开始慢慢流行,并且目前许多互联网大厂都开始探索边缘计算与云原生的结合方式,开源社区中也有对应的开源项目。测试人员需要了解该领域的测试方法。
  持续集成与发布:持续集成与发布作为非常流行的软件实践活动,已经在许多公司有较为成熟的理念和实践方法。而在容器技术流行的今天,如何让容器与云平台更好地集成也是测试人员需要学习的。
  云原生与大数据目前云领域早已脱离了早年间大家对它的认知,越来越多的大数据和人工智能(artificialintelligence,AI)项目开始与各个云平台集成,云平台也逐渐满足分布式计算程序运行所需要的条件。在大数据日益普及的今天,测试人员需要开始积累相关的知识。
  1.3本章总结
  几年前,云这个概念还离测试行业较远,只有若干大厂才会建设云相关的基础设施,所以在测试行业中从事云领域工作的人还比较少。但是最近几年云计算和云原生越来越流行,行业内的各个公司纷纷开始了“迁云”计划。这一突然的变故在给测试行业带来挑战的同时也带来了机遇,希望大家能抓住机遇,尽早开始储备相关的知识并步入云原生领域。
查看《云原生测试实战》全部连载章节
版权声明:51Testing软件测试网获得作者授权连载本书部分章节。
任何个人或单位未获得明确的书面许可,不得对本文内容复制、转载或进行镜像,否则将追究法律责
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号