嵌入式软件开发中的持续集成实现与实践
嵌入式软件持续集成的挑战与解决方案
在嵌入式软件开发中,持续集成(CI)是确保代码质量和开发效率的重要手段,但也面临诸多挑战。常见的解决方案是使用本地板卡农场,它包含数十甚至数百个开发板,能在合理时间内运行大量测试,从而实现大规模的 CI 开发。然而,这种方案存在两个显著缺点:
- 维护困难 :要让数十个开发板保持正常工作状态并随时可用于测试并非易事。开发板在多次烧录后可能会磨损、出现故障,需要手动复位,还需要大空间存放,甚至可能需要制冷设备。而且,大规模管理如此多的开发板也是一项挑战。
- 成本高昂 :设置和维护板卡农场成本极高。多年支持软件不仅需要运行测试,还得保留旧硬件以应对新项目,导致成本随时间增加。
鉴于这些问题,即使 CI 有诸多好处,在嵌入式软件中实施 CI 流程也并非易事。不过,嵌入式开发者可以借助虚拟硬件来实现基于服务器的测试优势。
虚拟平台是运行嵌入式软件的替代方案,其中 Arm Virtual Hardware(AVH)是实现大规模 CI 流程的优秀平台。由于 AVH 在云端运行,扩展和缩减规模都很简单。但需要注意的是,虚拟平台受其模拟范围的限制。虽然有能代表所有 Cortex - M CPU 的 AVH 系统,但它们无法完全代表实际硬件。例如,AVH 系统与最终设备在蓝牙、以太网、Wi - Fi、传感器和显示屏等特定外设方面可能存在差异。不过,这并不影响使用 AVH 进行 CI 测试的优势,只是需要明确在何处测试何种软件。
目前,部分 AVH 系统已能几乎精确地模拟物理开发板的软件行为,包括外设、显示屏和
超级会员免费看
订阅专栏 解锁全文
1992

被折叠的 条评论
为什么被折叠?



