首页 > 其他分享 >龙蜥开发者说:亲历从基础设施构建到系统质量保障,龙蜥未来可期 | 第 19 期

龙蜥开发者说:亲历从基础设施构建到系统质量保障,龙蜥未来可期 | 第 19 期

时间:2023-07-12 19:32:01浏览次数:37  
标签:社区 操作系统 19 平台 开源 亲历 开发者 测试


「龙蜥开发者说」第 19 期来了!开发者与开源社区相辅相成,相互成就,这些个人在龙蜥社区的使用心得、实践总结和技术成长经历都是宝贵的,我们希望在这里让更多人看见技术的力量。本期故事,我们邀请了龙蜥社区开发者宋彦岭来分享「亲历从基础设施构建到系统质量保障,龙蜥未来可期」。



欢迎阅读上期故事《历时三周,记录如何从 0 到 1 构建龙蜥衍生版》。开发者说系长期活动,对于积极投稿、多次分享的童鞋,我们还有神秘大礼鼓励!诚邀开发者们分享真实体验,以文会友、共同学习、一起进步。


龙蜥开发者说:亲历从基础设施构建到系统质量保障,龙蜥未来可期 | 第 19 期_开发者



本期故事主角:宋彦岭:龙蜥社区 QA SIG Maintainer,2022 龙蜥社区年度优秀贡献奖-代码之星获得者,联通数科 CULinux 研发团队测试工程师,主要参与社区 QA、T-One、系统运维等 SIG,负责 OS 版本测试与工具开发等工作。

大学毕业后,我有幸加入了一家网络安全领域的公司,成为了一名测试工程师。这是我第一次接触到 Linux 操作系统的相关内容,从此便开始了对操作系统的深入学习之旅。随着工作的不断深入,我逐渐了解了操作系统的各个领域,如性能测试中的 CPU、网络、内存、IO 等。在这个过程中,我对操作系统的理解逐步加深,也开始对操作系统的质量保障产生了浓厚的兴趣。

在我从事操作系统质量工作一年后,CentOS 停服事件发生了。在这个大背景下,国内的各个开源社区与对应的发行版都进入了快速发展和活跃期。也是基于此,我开始参与龙蜥社区的各项开源工作。最初,我只是将一些通用的测试用例对外开源或者做一些 upstream backport 工作。随着时间的推移,我逐渐参与了社区中各个 SIG (Special Interest Group,特殊兴趣小组)的深度工作,并将其结合我司的内部情况进行了一些定制化的工作。同时,我也不断将相关的 issue 回合社区,形成了一个良性循环。

如何有效地进行操作系统质量保障?我认为完备而细致的测试方案是至关重要的。在龙蜥社区 QA SIG 的双周会上,我们针对陆续发布的 Anolis 23、Anolis 8.8 等 OS 发行版不断完善整体测试方案,力争既有通用的、可推广的部分,又有对特定版本的定制部分。

截至目前,龙蜥社区已形成了一系列技术文档(https://openanolis.cn/SIG/QA),包括测试流程、测试策略、测试标准等。从功能、性能、稳定性、兼容性等角度,对系统安装、运维、管理以及虚拟化、容器等细化领域分别做了细致的测试描述。结合 CI 测试、nightly 测试、release 测试等流程,针对 x86、Arm 等不同架构,我们形成了一个全面的测试矩阵,为质量保障工作提供了有效的理论指导。

龙蜥开发者说:亲历从基础设施构建到系统质量保障,龙蜥未来可期 | 第 19 期_开发者_02

(图/龙蜥OS测试标准)

上述测试矩阵庞大而细致,依靠人工跟踪每一项内容是不现实的。因此,我在团队内部基于源码部署了龙蜥社区开源项目 T-One 测试平台。该平台通过 tone-cli 集成了大量开源测试工具和自研自动化测试用例,并通过平台开放的 API 接口与 jenkins、gitlab、koji 等其他平台联动,实现了从代码提交、构建到测试调度、测试执行、测试报告的完整流程。在这个过程中,会产生一系列与适配特定操作系统、结果展示等相关的问题。通过反馈社区与需求协同开发,我们实现与内外部 T-One 的共同演进。

龙蜥开发者说:亲历从基础设施构建到系统质量保障,龙蜥未来可期 | 第 19 期_开发者_03

(图 自动化测试平台图示/已获作者授权)

除了自动化测试平台外,为提高研发效能,我们在内部部署了龙蜥的 SysOM 运维平台。该平台加强了系统监控、宕机分析、CVE 修复等能力,并且基于 SysAK 开源工具实现了对系统状态的快速检查。这些工具提高了操作系统的可观测性,为解决问题提供了有力参考。

龙蜥开发者说:亲历从基础设施构建到系统质量保障,龙蜥未来可期 | 第 19 期_自动化测试_04

(图 系统运维平台图示/已获作者授权)

此外,像龙蜥的 KeenTune(轻豚)、ancert 等工具在操作系统测试工作方面也提供了很大帮助。我们希望龙蜥社区能够继续开发更多的基础设施与效能工具,以提高操作系统开发和测试的效率和质量。



未来,我认为龙蜥操作系统开源社区的发展还有很大的潜力首先,随着人工智能、云计算、大数据等技术的不断发展,操作系统也需要不断地更新和升级,以满足新的需求和挑战。例如,随着边缘计算的兴起,未来的操作系统需要更好地支持设备的联网和数据传输,同时也需要更好地保障数据的安全性。其次,随着互联网的普及和开源思想的深入人心,越来越多的人开始意识到开源软件的优越性。龙蜥社区的发展将会受到更多人的关注和支持,这将进一步推动开源操作系统的发展。同时,龙蜥社区也需要不断提升开发者的参与度和贡献度,以推动操作系统的持续发展和进步。最后,我相信在龙蜥社区生态伙伴们的共同努力下,未来的操作系统将会更加稳定、更加高效、更加安全。操作系统的开发将会更加注重用户体验和用户需求,同时也将会更加注重标准化和互操作性,以满足不同用户的需求和应用场景。



相关链接地址:

T-One 测试平台:

https://tone.openanolis.cn/



—— 完 ——



微信公众号 - OpenAnolis龙蜥(OpenAnolis)。

标签:社区,操作系统,19,平台,开源,亲历,开发者,测试
From: https://blog.51cto.com/u_15308345/6703260

相关文章

  • 2022 RoboCom 世界机器人开发者大赛-本科组(省赛)
    RC-u1不要浪费金币#include<bits/stdc++.h>usingnamespacestd;intmain(){ios::sync_with_stdio(false),cin.tie(nullptr),cout.tie(nullptr);intn,m,res=0;cin>>n>>m;for(inti=1,cnt=0,x;i<=n;......
  • Spring-Boot-19-Junit测试
    随着Spring开发的深入,我们逐渐打算使用Spring-test与Junit结合进行开发测试1.Jar形式的Maven依赖<dependency><groupId>junit</groupId><artifactId>junit</artifactId><version>3.8.1</version><scope>test</scope></dep......
  • upload-labs靶场1-19关详解
    upload-labs靶场下载地址https://gitcode.net/mirrors/tj1ngwe1/upload-labs?utm_source=csdn_github_accelerator需要新建一个upload文件夹,该靶场在php5.2.17版本下(除特殊说明的情况下)。Pass-01(前端验证绕过)先上传一个php文件看一下回显然后上传一个正常文件,发现回显正......
  • 7DGroup性能&测试开发文章持续更新(2019/10/15)
    性能闲谈系列:浅谈window桌面GUI技术及图像渲染性能测试实践杂谈:性能测试的范围到底有多大?戏说CPU使用率-驳《CPU使用率度量指标是扯淡!》译文标题对性能测试评估分析优化市场的反思泛谈系统级跟踪和应用级跟踪性能测试分析优化该有的范围期待996ICU的条款尽早加入到开源协议中!性能基......
  • ROS 的三种通信方式 2a82329219bf47c9a8f48a534ab31af7
    ROS的三种通信方式注意以下所有代码均基于:ubuntuROSDate18.04LTSMelodicMoreniaMay23rd,2018 May,2023写在最前,ROS1主要有三种通信方式,分别是:话题通信服务通信参数通信话题通信(Topic)话题通信主要是指通过发布和订阅服务的方式,来进行匿名的通信,一方......
  • 华为云5大开源项目发布与更新,助力开发者实现应用创新
    摘要:华为开发者大会2023(Cloud)期间,由华为云开源主导的“5大开源项目发布与更新,多种底层能力助力开发者实现应用创新”分论坛圆满落幕。本文分享自华为云社区《HDC.Cloud2023|华为云5大开源项目发布与更新,助力开发者实现应用创新》,作者:华为云开源。华为开发者大会2023(Cloud)期间,......
  • 19:vue3 依赖注入
    1、通过Prop逐级透传问题(传统老的方法只能逐级传递) 传统方式代码如下:App.vue1<template>2<h3>祖宗</h3>3<Parent:msg="msg"></Parent>4</template>56<script>7importParentfrom"./components/Parent.vue"......
  • 金蝶云苍穹技术开放日第七期:开发者工具赋能,打造开发新模式
    金蝶云·苍穹技术开放日」系列活动由金蝶云苍穹平台生态部主办,迄今已成功举办六期,旨在为开发者提供技术分享和行业交流的平台。每一期我们都会聚焦一个技术主题,邀请本领域权威技术专家和外部嘉宾分享技术研究和Madewithkingdee实践案例。金蝶云·苍穹技术开放日第七期以“开发......
  • 7-11 leetcode 2619
    请你编写一段代码实现一个数组方法,使任何数组都可以调用 array.last() 方法,这个方法将返回数组最后一个元素。如果数组中没有元素,则返回 -1 。ps:this环境变量的使用,this.length的返回值是数字类型代码实现:<script>//在数组的原型写扩展方法可以给所有的数组......
  • 力扣---1911. 最大子序列交替和
    一个下标从 0 开始的数组的 交替和 定义为 偶数 下标处元素之 和 减去 奇数 下标处元素之 和 。比方说,数组 [4,2,5,3] 的交替和为 (4+5)-(2+3)=4 。给你一个数组 nums ,请你返回 nums 中任意子序列的 最大交替和 (子序列的下标 重新 从0开始......