Case Studies

Retalix, an NCR Company

RETALIX 加速了成千上万的unit和集成测试,将持续集成周期缩短了 90%,进而取得了重大的交付改进

Retalix概述

Retalix 10 商店和销售渠道套件统一并简化了店内、移动商务和在线店面系统的部署和管理。

Retalix 在落实了 Incredibuild 技术项目后,被 NCR 集团收购,收购总价约 6.50 亿美元,每股收购价达到 30 美元。

该解决方案的敏捷架构能够让零售商摆脱整合不同“筒仓”的实践,迁移至一个统一的单引擎平台,从而实现最高的灵活性、最快的上市时间以及出色的集中式管理、监控和控制。该公司的下一代 POS 包括全面且独立于硬件的 POS 功能,该功能可以部署在独特而广泛的硬件平台和外围设备上。该解决方案与所有零售触点以及商店和库存管理应用程序紧密结合。

难点

在 POS 领域开发一个稳健且可扩展的平台,不仅需要拥有高性能和完整功能的解决方案,而且要保证高质量和不断更新的软件测试周期,从单个开发到全系统过程都需要非常高效地进行测试,以确保高质量和快速发布。

在开发和测试其软件时,Retalix 面对的是一个复杂的模块化系统,需要耗费大量的资源。由于单个周期需要运行大约 15000 个unit测试进程,其平台需要进行拓展,并支持进一步扩展。每一次迭代都需要安装其最新版本,而当版本更新,其他人必须保持等待,然后才能提交他们自己的测试修复。整个过程曾耗时 40 分钟,凭借每位开发人员机器上的新硬件和 DDS,耗时可降至 12 分钟。

目标是查看是否还有其他方法可以缩短这一构建周期。在部署初始解决方案之后,该集团决定解决他们在实施过程中识别的第二个难题:持续集成过程中的集成测试。每一个集成流程都涉及搭建环境、准备虚拟机,并且在进行初始优化和新硬件之后,每天运行该流程 3 次,大约需要 2 小时 30 分钟,在部分情况下甚至更长时间——最长 4 小时。

Incredibuild 让我们大幅缩短了发布周期,从原本的 2 小时缩短到 12 分钟。这样一来,不论我们一天之内想完成几次构建,都能随心所欲地实现。

Alon Gilat

发布经理

解决方案

Retalix 安装了 Incredibuild Agent,并且该集团的每位开发人员均可从他们自己的工作站启动unit测试周期,并使用Agent计算机上可用的全部核数。测试unit由大约 15000 个测试构成,现在可以并行运行。

结果令人惊讶,并且可以让开发人员彻底改变他们的工作方式。凭借经过优化的硬件和基础结构,每一位开发人员的构建时间从 12 分钟降至了 1 分 20 秒,速度提高了差不多 10 倍。整体调试版本过去需要耗时约 50 分钟至 1 小时 10 分钟,而现在却一共缩短至了仅仅 10 分钟。

益处

测试周期加速对每个开发人员的表现都产生了极大的影响,从而让 Retalix 获得以下益处:

  • 通过缩短测试周期 90% 来缩短构建过程
  • 缩短测试周期,并使每天运行更多周期
  • 能产生巨大的交付改进

此外,在持续集成过程中,Retalix 还成功部署并实现了真正的左移方法,在软件交付过程中提早发现并预防漏洞。

不仅如此,有了 Incredibuild,开发人员就可以在向仓库提交代码之前,先运行完整的unit测试套件。

结果概要

30,000 Unit 测试
2小时
12分钟
Integration Test in CI
50分钟
1.3分钟
Debug Version Reduction
70分钟
10分钟