公司动态
中国移动低代码自动化测试框架创新与实践
当前, “人工智能 ”战略在推进着, 这对算力基础设施的性能提出极度高要求, 对其可靠性也提出极度高要求, 如何达成在算力规模快速增长以及算力高效交付之间的平衡, 这是业内算力基础设施建设者共同面临的挑战, 也是服务者共同面临的挑战。移动的中国, 凭借敏捷的理念以及自动化能力的种种平台, 于云、网、边等通算基础设施的范畴之内, 达成了自动化集成测试应用大规模的落地情况, 致使大规模资源池建设交付的效率大幅度地得以提升。然而, 在持续不断提升自动化水平以及覆盖度的进程当中, 却也面临着一些全新的挑战。一是自动化测试场景正变得越发繁多, 其覆盖范围从硬件基础设施延伸至平台软件以及网元应用, 从通用算力拓展到诸如 DPU、GPU、NPU 等异构智能算力, 随着测试内容日益复杂, 对于集成测试的自动化程度需求也在不断提高。第一个情况是, 软硬件版本迭代升级变得越来越迅速。第二个情况是, 测试用例得依据被测系统版本的升级, 持续开展开发适配工作, 然而沟通成本高昂, 开发投入巨大, 并且开发的成果与工作量投入二者并不成正比。其三是, 测试用例开发人员方面的需求呈现出越来越大的态势。传统的自动化测试用例不得不经由专业开发人员来完成, 而非专业开发人员常常老是会被多种多样的开发工具以及有着较高门槛的代码给拒之于门外。中国移动为应对挑战创新性推出 “低代码自动化测试框架”, 实现自动化测试产业合作的 “双循环” 新模式, 该模式支持合作伙伴针对多种测试场景进行 “自主调试、自主适配、自主开发”, 进而推动端到端产品的自动化测试, 大幅提速业务敏捷创新, 显著提高业务交付上线效率。什么是低代码拥有很低书写量标准这件事被叫做软件开发方法, 它让开发者能够运用最少的编码行为量, 来迅速地搭建以及布置应用程序内容, 从各个方面朝着更低的方向, 减少软件在开发、配置、布置还有培训方面存在的成本。若把软件开发比作建造一处房屋, 惯常手法是自起始着手塑造各个部分, 诸如墙壁、窗户、门等, 这要耗费诸多的时间以及精力, 而借助低代码开发, 恰似运用预制的模块化部件去修筑房屋, 这类部件能够经由简易的组合以及调试来迅速构设应用程序, 所以, 相比较于传统开发方式, 低代码具备如下优势。首先是能够进行快速开发, 低代码平台会提供预制的组件, 还会提供预制的模板, 这就致使应用程序的构建过程被大大加快了。一是灵活具备可扩展性, 低代码平台能够允许实现快速迭代进而进行调整, 目的在于适应持续变化的业务需求, 与此同时还支持应用的扩展以及定制。第三点, 则是成本的降低, 由于低代码降低了开发的门槛, 进而减少了对于专业开发人员的依赖, 并且缩短了开发的周期, 所以进一步地降低了开发以及运营的成本。有一点是提升效率, 低代码平台对跨职能团队合作予以支持此情况之下, 业务部门跟IT部门能够更紧密地进行协同工作了, 进而提高项目研发效率。此时此刻, 企业对于具备快速特性、拥有灵活特质、得以降本提效等关联需求持续增多, 不管是处于初创阶段的企业, 还是业界当中的巨头企业, 像微软、谷歌、亚马逊、阿里巴巴以及腾讯等, 均都在踊跃地进行低代码领域的布局, 进而推出了各自所拥有的低代码开发平台。举例来说, 微软的Power Apps、阿里云“宜搭”以及腾讯云“微搭”等, 这些平台不但提供了能够实现可视化的开发工具, 并且还与企业已然存在的服务还有产品生态切实紧密集成, 从而促进了跨部门以及跨系统的协作与自动化。不仅软件开发领域的一场变革涵盖低代码技术, 企业数字化转型的关键加速器也是它。伴随技术持久进步以及市场需求持续增长, 低代码必定会成为未来软件开发以及企业运营的突出趋向, 这一点毋庸置疑。行云简筑低代码自动化测试框架方案当下, 业界针对基础设施相对成熟的自动化测试用例, 通常会采用YAML、Go、Shell脚本等诸如此类的语言, 对针对不同测试场景的用例去单独撰写自动化测试脚本, 每一个测试用例都是那种高度代码化的脚本文件 , 其自动化用例的开发也主要是在内部产品开发团队与测试团队之间发生的。通信行业, 或者企业, 当其大量采购外部供应商的软硬件产品时, 传统的自动化测试方法, 存在如下诸多痛点问题。一方面, 因产权以及安全性方面的考量, 测试用例针对厂商、规范人员而言均为“黑盒”。另一方面, 被测系统持续升级, 这就要求跨越较高门槛、懂得代码的开发人员来进行适配。再者, 其存在可读性低、维护成本高的状况, 要同时对规范文本以及代码脚本加以维护。另外, 各类测试场景得依据不同的语言来开展用例开发, 缺少统一性。针对上述那些问题, 中国移动研究院的算网基础设施自动化团队亲手进行自研, 研发出了行云简筑低代码自动化测试框架, 并且还提出了一种全新的、具有颠覆性的自动化测试用例开发模式, 该模式能够支持内部与外部不同的角色使用者呢其中有像在内部属于要遵循规范方面的人员、专注于实施测试工作的团队, 以及在外部涵盖从事厂商开发、负责集成工作的人员等等, 借助这种模式能以简单且高效的方式, 顺利完成各类测试用例的开发。如图1所示的行云简筑低代码自动化测试框架, 由三个层级构成, 其一为低代码用例层, 其向外开放测试用例, 厂商人员能够直接针对该层级的全部用例实施编辑、修改以及调试操作, 接着提交至中国移动的用例库其二是步骤层, 它针对用例层的各个测试步骤予以底层实现, 此层级不对外, 是为中国移动自研、可控的框架能力其三是底层工具层, 它为步骤层提供共性方法, 借此避免代码的二次开发。上线满级游戏 上线满级游戏开服表 上线送VIP送首冲如图2所示, 是基于行云简筑开发的虚拟化平台自动化测试用例, 此测试用例创建了两个虚拟机, 还对虚拟机之间的连通性做了测试。测试用例里的测试步骤, 是依据语法库中的语句, 像积木组合那样搭建。当中的相关参数, 可基于语法库进行修改, 比如虚拟机规格大小、虚拟机名称等。行云简筑低代码自动化测试框架具备这样一些特点, 其一在于灵活, 用户能够凭借任意组合, 去排列各种各样的模块化测试步骤, 进而创建出针对不同业务场景的各类测试用例, 以此满足多变且灵活的测试需求, 其二是用例全开放, 测试用例对于所有角色开放, 这些角色涵盖内部规范、测试团队以及外部厂商开发、集成人员等, 使得测试全流程清晰可见, 解决了以往因测试用例对外部呈“黑盒”状态而导致的失败用例定位困难、调试难题其三是低门槛, 用例语言是中文的, 具备高度可读性, 通俗易懂, 哪怕是没有深厚编程经验的业务专家也能够参与到测试用例的开发调试之中, 其四是多场景通用, 该套框架能够基于一个语法库, 同时应用于虚拟层、容器层、Web、DPU 等多场景的自动化测试工作。基于框架打造内外“双循环”协同模式对于行云简那种低代码的自动化测试框架的运用, 相当显著地改变了自动化测试的展开以及应用的模式。第一条是, 降低技术门槛, 借助模块化、流程化、结构化的方式, 极大地降低了自动化测试开发的技术门槛, 如此一来, 内部规范、测试团队以及外部厂商开发、集成人员等多种角色, 都能够参与到测试用例的组织构建全过程中。首先, 是提升测试的敏捷程度。依靠低代码模式, 也就是“零代码”测试步骤组织, 加上基于目标场景的简单二次扩展。如此一来, 能够极其迅速地适配各类复杂的测试场景。进而, 各种不同角色都有能力对测试用例进行快速的修改与调整。最终, 持续推动基础设施建设实现降低成本并提高效率, 又提升基础设施的敏捷化以及智能化水平。第一, 是推进内外部的协同共研, 第二, 则是在完成开发框架便捷且易用的基础之上, 第三, 能够协同处理好多重角色, 且创新性地达成内外这“双循环”的协同共研这一全新模式, 好像图3所展示形象一样。所谓“外循环”, 是针对新出现的自动化测试场景以及新规范而言的, 厂商能够依据低代码框架来“自主研发”新的测试用例。“内循环”则是厂商把规范测试动作提前, 在现网交付以及验收测试之前, 于实验室对持续迭代的厂商软件版本展开循环验证, 并且基于标准规范进行用例“自主适配”, 以此达成厂商软件版本与自动化测试用例的同步迭代。应用效果及未来展望当下, 中国移动的团队, 凭借着该框架, 已然同华为、中兴这些云计算平台供应商展开了合作, 于网络云、边缘云等多种场景之中, 落实并推行了内外“双循环”的全新合作模式, 进而树立起了运营商集成测试领域的崭新范式。以外部循环为基础, 厂商达成自主开展测试用例的开发工作, 以此提升产品在研发方面的效率状况。于中国移动的某个项目云管理系统集中采购环节当中, 针对云服务处在编排管理的部分, 需要增添二十四个测试用例。华为产品进行开发的人员, 依据测试规范所提出的要求, 凭借该低代码框架达成测试用例的自主开发任务然后由中国移动配备的自动化团队予以配合调试, 并且确认相关用例符合规范所规定的要求。借助这一模式的运用, 华为产品在出厂之前能够开展规范测试验证, 以此保障对于规范理解的一致性, 显著提高了产品新增需求的研发效率, 给产品采购以及快速交付给予了保证。在基于内循环的情况下, 厂商达成自主集成调试, 以此提升现网交付效率。在中国移动“网络云四期及五期”软集现网交付以前, 中兴与华为于实验室依据产品最新版本自行开展相关测试用例的调整适配工作, 达成厂商软件版本迭代跟中国移动测试用例迭代的“零时间差”, 这省去了测试用例刷新以及发布的迭代流程。经由这样的工作前置, “网络云四期及五期”的现网交付效率得到了大幅提升。有着低代码自动化测试框架以及 内外“双循环”模式的应用, 这给中国移动 及其合作伙伴带去了巨大价值以“网络云四期及五期”如今的现网验收测试当作例子, 中兴 还有华为的研发人员 在现网针对失败了的测试用例 进行“自主调测”, 省掉了跟研究院 以及规范团队的沟通过长过程, 现网支撑的工作量 下降了约50%, 问题定位所需要的时间 缩短了30%。于“网络云六期”里, 针对中兴 ARM 服务器虚构层面展开调试, 在此期间, 中兴自身所具备的相关人员于中国移动所提供的 42 个用于测试的案例之中, 达成了全然自主的调试操作, 这一行为显著地促使试点案例测试的效率获得提高, 有关于人力方面的投入跟过去相较之下, 下降了 80%。当下, 行云简筑低代码自动化测试框架已累计助力于中国移动56个云计算资源池的建设交付之事, 此为算力基础设施高质量交付贡献颇为主重要大, 合作伙伴借由运用该框架, 深切感悟得了低代码框架给其产品研发、交付等进程带去的便当之便, 对自动化以及内外“双循环”模式予以了程度颇高之认可, 将来之时, 技术团队会把该框架延伸扩展至智算中心等更多领域之地, 并且会借助AI技术进一步提升低代码框架的智能化水准程度, 为算力基础设施高质量建设保驾护航。*本文刊载于《通信世界》总第946期2024年6月25日 第12 期