Redian新闻
>
持续集成的关键:产品反馈驱动实践

持续集成的关键:产品反馈驱动实践

公众号新闻

作者 | Ben Linders
译者 | 马可薇
策划 | 丁晓昀

缩短持续集成(CI)系统的反馈时间并优化测试方法和类,可为开发团队带来更为有效的反馈。据 Tobias Geyer 所说,CI 系统是开发过程中的重要一部分,且应被重视起来。

Tobias Geyer 在 2023 年罗马尼亚测试大会上以测试人员的身份谈到了集成系统的改进问题。

在 Geyer 刚入职时,公司的持续集成系统是一台堆在桌子底下的老旧开发电脑,没人负责也没人有时间做维护。他说,这台电脑的速度太慢导致反馈周期非常长,开发人员完全忽视了 CI 系统的反馈。

Geyer 称,优化反馈时间的一个捷径是在工作时间跳过不必要的构建步骤,并将构建限制为每晚一次。

一个更难处理的瓶颈问题则是磁盘的 I/O。构建读取和写入的数据量太大,磁盘没办法跟得上。Geyer 说他最后找到 IT 部门的人把 CI 系统从开发电脑挪到了数据中心的虚拟机上,解决了磁盘的 I/O 问题,并将系统扩展到了两台机器上,使其能够并行运行更多的构建。

他们将测试按执行快慢分为几类,在快反馈 CI 构建中只运行测试的一个子集,速度慢的测试则被放到了执行频率更低的专用构建中。Geyer 解释道,这么做让他们得到的反馈依旧完整,且大部分反馈要比之前快上许多。

Geyer 描述了他们是如何优化测试的方法和类:

在找出运行缓慢的测试后,我们将其当作技术债务来处理。为改进测试,我们给开发者们提出了“测试债务预算”,开发者们对这些问题的处理方式各不相同:

1. 将测试数据精简,只保留有关数据,从而缩短测试的设置时间

2. 引入模拟测试,不再需要预加载任何测试数据

3. 让产品代码更具可测试性,使原本需要集成测试的部分可被单元测试替代完成

Geyer 总结,不一定要深刻理解技术领域才能带来影响:

我可以利用我测量、实验和协作的测试技巧让事情变得更好,即使这也意味着别人必须去完成实际的实施工作。

InfoQ 就 CI 系统的改进话题采访了 Tobias Geyer。

InfoQ:可以给出一个跳过构建步骤的例子吗?

Tobias Geyer:效果最明显的例子是我们的产品混淆。每个产品构建在交付给客户之前都会被混淆,而这些被混淆的产品很明显是需要经过测试的。但产品混淆过程至少需要三十分钟,因此我们在白天跳过这一步骤,并在晚上将产品混淆并进行测试。

InfoQ:你们对构建过程和平台有什么重要的变动吗?

Geyer:我们将我们的构建系统从 Ant 和 Windows 的批处理迁移到了 Gradle。主要工作是由我们的团队中的开发者们完成,我负责处理所有与测试执行相关的工作。

引入测试 CI 系统这一改变虽然明显但仍然重要,我们得以在不中断正常开发流程的前提下,准备并测试 CI 系统中的变更(如插件更新、新增构建节点等等)。

InfoQ:你们是如何鼓励在不同团队间的持续集成知识共享?

Geyer:我是在公司的其他部门中寻找有过在 CI 系统上工作经历且具备类似技术栈的人。我们定期开会讨论(CI 系统)最近更新和大家所面临的问题。很多时候某个团队对问题的解决方案是可以被复用的。

能看到其他人的进展和他们的结果是很好的。有时候一些团队想要引入的变更会在他们的团队内部遇到阻力,“其他团队有过这方面的正向经验”,这句话有助于说服他人。

InfoQ:对于不满自己 CI 解决方案的团队,你有什么建议吗?

Geyer:像是对待其他软件开发项目一样看待(CI 系统)。把困扰自己的问题列出来,用对待 bug 的方式处理它们。也就是说,对这些问题进行优先级排序、分析,并合作修复。我想强调“合作”这点,和 IT 部门的探讨对我们修复部分问题而言至关重要。

原文链接

Treat Your CI System as a Product for Faster and Better Feedback(https://www.infoq.com/news/2023/06/CI-product-feedback/)

相关阅读:

Terraform 引入新的 CI/CD 工具,增加对 Azure Linux 的支持 (https://www.infoq.cn/article/H7CJpGyk0BRjUTAqIXbM )

中国企业研发高效能白皮书 -CI/CD 篇 (https://www.infoq.cn/article/LFa4ESMJOMY66HtTjYsG )

声明:本文为 InfoQ 翻译,未经许可禁止转载。

点击底部阅读原文访问 InfoQ 官网,获取更多精彩内容!

今日好文推荐

微信取消秋招;谷歌软件工程师基本年薪超 500 万;通报批评员工到点下班?比亚迪回应 | Q资讯

十年磨砺,持续闯入“无人区”,这家公司如何做好金融科技?

马斯克等人热捧:高薪缺人,但要懂全栈懂LLM,一个全新职业正在兴起!

微软赢麻了!联合Meta 重磅发布开源、可直接商用大模型Llama 2,网友:OpenAI 感觉如何?

微信扫码关注该文公众号作者

戳这里提交新闻线索和高质量文章给我们。
相关阅读
互联网实习 | ​TikTok+网易+小米+字节跳动实习生热招中,尽快投递!趣图:产品多次迭代之后的样子毛军发院士 | 从集成电路到集成系统你会怎么做?男子曝面试隐藏题目 咖啡杯是录取关键:能看出态度百济神州2023年中报点评:产品收入继续维持高增速,核心产品海内外放量超预期【东吴医药朱国广团队】发改委等8部门《职业教育产教融合赋能提升行动实施方案(2023—2025年)》胡须专访 SeaTunnel:首个国人主导的数据集成领域 Apache 顶级项目是如何炼成的【应用引领集成电路产业高质量发展】第三届中国集成电路设计创新大会暨无锡IC应用博览会(ICDIA 2023)7月即将在无锡召开直播间 | EB5成败关键:选对项目方和服务方事半功倍,安全快速!中国未来五年的关键:发展与安全的双重变奏我的产品方法论分享:产品需求方案中要包含哪些核心要素?百集视频专题《大话集成电路》第三章:集成电路的基础工艺记者手札 | “工赋泉城”:一场工业互联网生动实践诺辉健康2023H1半年报点评:产品持续快速放量,肿瘤早筛龙头未来可期【东吴医药朱国广团队】万字点评Vision Pro:产品的成功基于对生活方式的重新定义保险:产品上新!人已出国,也有境外旅行险可以买咯~ (这样的产品并不多哦)一文教你分清持续集成,持续交付,持续部署两篇Cell和两篇Cancer Cell揭示驱动多种癌症生长的关键蛋白及其调控方式全球量子互联网的关键:新型量子中继器教育部等10部门启动实施国家银龄教师行动计划,来看五大行动5077 血壮山河之武汉会战 黄广战役 9硬件产品经理:产品成功的四个要素大气中的同位素,有望解锁行星形成的关键拼图《那就是我》探秘AI大模型与业务增长的商业融合:产品经理不可错过的专场大会一家40年的科技公司长青策略,从产品驱动到产业驱动的“Hard模式”认知:产品如人,产品经理的价值观鹭友招募 | 2024春季/2024秋季世界公民年行动实验室南非项目网申现已开放申请!外包江湖路:产品经理的逐梦征程月潜,愿意聊聊吗?2024广东省高考报考提醒 | 高水平运动队新政策正式启动实施!贵州“村超”续集:“文旅体”融合持续推动城市换代升级酝酿超12款智选车:产品、渠道、智能化,华为绕不过的关键词“嫌麻烦” 的北京人
logo
联系我们隐私协议©2024 redian.news
Redian新闻
Redian.news刊载任何文章,不代表同意其说法或描述,仅为提供更多信息,也不构成任何建议。文章信息的合法性及真实性由其作者负责,与Redian.news及其运营公司无关。欢迎投稿,如发现稿件侵权,或作者不愿在本网发表文章,请版权拥有者通知本网处理。