首页 > 汽车技术 > 正文

智能汽车车用基础软件平台关联技术

2022-09-25 17:59:10·  来源:汽车测试网  
 

(1) 车载软件多数是嵌入式软件的开发


与传统软件的 CI/CD 不同,车载软件开发大部分是嵌入式开发,整个过程需要严重依赖硬件,而如今随着汽车电子电气架构变得越来越复杂,会有更多的硬件、软件以及更多的连接,而硬件以及连接也是传统 CI/CD 中从未遇到过的难题。


(2) 车载软件对质量和安全要求更高


相比于传统 IT 行业,汽车电子对软件和硬件的质量和要求都非常高,这些要求在消费电子类,甚至是医疗电子类和工业控制类产品上是没有的。而为了满足功能安全等方面的要求,汽车软件往往需要做一些额外设计。面对这样的复杂系统,开发人员也需要比传统开发更现代、更强大的软件开发流程、开发环境以及开发工具。


2.  持续集成


持续集成(CI)是指频繁地(每天至少一次)将代码集成到主干。它的好处主要有两个:


·  快速发现错误。每完成一点更新,就集成到主干,可以快速发现错误,定位错误也比较容易。


·  防止分支大幅偏离主干。如果不是经常集成,主干又在不断更新,会导致以后集成的难度变大, 甚至难以集成。


Martin Fowler 说过,“持续集成并不能消除 Bug,而是让它们非常容易发现和改正。”


持续集成(CI)开发人员将会频繁地向主干提交代码,这些新提交的代码在最终合并到主干前,需 要经过自动化集成、静态代码解析和自动化测试流进行验证。 持续集成(CI)是在源代码变更后自动检测、拉取、构建和(在大多数情况下)进行单元测试的过程。它的目标是快速确保开发人员新提交的变更是好的,并且适合在代码库中进一步使用,这样有助于降低总体的构建成本,并在开发周期的早期发现缺陷。


(1) 持续集成流程


图片

图4.4-5持续集成流程


如图 4.4-5 所示,典型的持续集成流程,大致可以归结为以下 4 个步骤:


·  提交代码到代码仓库


·  触发持续集成


·  进行代码静态检查 -> 自动集成 -> 提交前的自动化测试 -> 提交后的自动化测试


·  结果反馈

分享到:
 
反对 0 举报 0 收藏 0 评论 0
沪ICP备11026917号-25