0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

高质量持续集成:VectorCAST与Jenkins实战指南

北汇信息POLELINK 2023-09-28 08:27 次阅读

持续集成(Continuous Integration,简称CI)是一种软件开发/测试方法。它要求开发及测试人员频繁地将代码提交到用于共享的开发分支中,经过充分的测试和审查,然后通过自动化的构建和测试流程,对代码进行构建、单元测试、集成测试等步骤以确保代码的质量和可交付性。早在2000年代初,就有主机厂及零部件供应商开始尝试通过持续集成来提升软件开发效率和质量。而在竞争愈发激烈、整车集成化趋势愈加凸显的当下,二者都认识到提升软件开发效率和质量的重要性。他们深刻的明白为了快速响应市场需求和用户反馈,同时尽可能避免缺陷和故障,一个高效可靠的持续集成流程是必须的。因此,持续集成在汽车软件测试行业的重要性自是不言而喻。Jenkins作为最具代表性,市场占比最高的开源CI工具,在构建持续集成流程方面发挥了重要作用。通过使用Jenkins,可以轻松地集成其他各式工具,自动构建、执行测试流程。Jenkins 还提供了灵活且丰富的插件系统,允许用户根据需要去定制专属的工作流程。

在这样的背景下,VectorCAST作为Vector公司旗下基于V模型开发的C/C++代码动态测试工具,也针对Jenkins开发了自己的插件,使其能够与Jenkins进行无缝集成。通过使用VectorCAST和Jenkins进行集成测试,无需启动客户端便可便捷快速的完成自动测试及增量回归测试,得到完整的测试结果报告。那么接下来就为大家介绍如何在Jenkins上完成对VectorCAST工程的持续集成。bd581e84-5d95-11ee-9788-92fbcf53809c.png集成准备工作
一、VectorCAST工程配置当我们想在Jenkins上执行VectorCAST工程时,我们首先需要有一个完整的VectorCAST工程,包含四个部分,即编译器、测试套件、组和环境
在完成于VectorCAST工具上的测试项目创建后(具体操作方式请查看上方视频,得到工程对应的vcm文件:
bd5e5f88-5d95-11ee-9788-92fbcf53809c.png

二、Jenkins配置
在网页端打开Jenkins,通过Jenkins的Manage Jenkins Plugins Available plugins搜索安装VectorCAST对应的两个可安装插件:bd64e89e-5d95-11ee-9788-92fbcf53809c.png通过Jenkins的节点管理Manage Jenkins Nodes来创建执行项目所用的节点并设置节点并发数。节点是用来执行构建任务的工作机器或服务器,我们可以自由选择创建在主机或虚拟机中,通过在Jenkins中配置和管理节点,可以实现分布式构建和部署,通过将任务分配到不同的节点上并行执行,来提高构建和部署的效率;而并发数应选择设置为大于等于当前项目的环境数,否则会导致当前项目没有可用的节点致使执行停止:
bd6c9bfc-5d95-11ee-9788-92fbcf53809c.png
回到Jenkins主页面选择VectorCAST,我们便可以看到现在可通过Create Single Job或是Create Jenkins Pipeline来创建任务,在Jenkins中,Single Job和Pipeline Job都可以完成同样的构建过程与结果,而Pipeline Job更适合多个测试环境下需要节省时间并行执行的项目,且对于Pipeline Job,我们不需要单独去编写pipeline脚本,VectorCAST插件会自动生成pipeline脚本来帮助我们更快速便捷的构建Jenkins工程:bd721668-5d95-11ee-9788-92fbcf53809c.pngbd789fb0-5d95-11ee-9788-92fbcf53809c.pngJenkins Job创建
我们选择任一Jenkins Job,开始对相应的VectorCAST工程进行配置,配置选项除以下提及外皆选择默认即可。
在Project Path处选择我们项目的vcm文件的路径,如是本地则选择其绝对路径,如使用Git库/SVN拉取文件则转为选择相对路径:bd7dad02-5d95-11ee-9788-92fbcf53809c.pngNode Label处填入此前创建好的节点名称:bd829c72-5d95-11ee-9788-92fbcf53809c.png
Job Options处选择为当下创建的任务命名,此处也可保持空白,插件会根据 vcm 文件的名字自动命名:
bd8885d8-5d95-11ee-9788-92fbcf53809c.png

在接下来的Scripts脚本处可用于定义 Windows及Unix(根据实际使用的系统而定)的脚本命令。我们可以通过定义环境变量或调用批处理文件来设置环境脚本命令。当我们的工程是通过交叉编译链进行编译的,那么就可以将相应的环境配置或是批处理脚本填入此处:

bd8f2faa-5d95-11ee-9788-92fbcf53809c.png

当我们需要从Git库/SVN检出文件时,我们可以通过SCM项进行关联:Single Job:bd9617ac-5d95-11ee-9788-92fbcf53809c.pngPipeline Job:bd9b4fd8-5d95-11ee-9788-92fbcf53809c.png在我们完成对于Jenkins Job的配置后,选择Create即可完成Jenkins Job的创建。bda42374-5d95-11ee-9788-92fbcf53809c.png执行并查看结果
选择我们上面创建好的Jenkins Job,通过Build Now执行当前任务。
Jenkins的自身特性会在任务执行过程中实时监控并进行记录,通过点击执行进度条进入控制台查看实时执行进度:
bda966e0-5d95-11ee-9788-92fbcf53809c.png待执行完成后便可查看执行结果,VectorCAST插件同样会生成通过工具执行结果所得的相应报告:
bdb187ee-5d95-11ee-9788-92fbcf53809c.png同时我们也可以检查这个工程的测试用例的执行情况及整体的覆盖度情况:
bdb8c7a2-5d95-11ee-9788-92fbcf53809c.png对于Pipeline Job,我们还可以通过阶段视图与Blue Ocean来帮助我们更清晰的认知到每一阶段的执行情况:
bdc0b23c-5d95-11ee-9788-92fbcf53809c.png

以上就是我们通过Jenkins集成VectorCAST的全部内容,而除此之外,我们还提供基于脚本的方案来助力自动化整个测试流程。相较于需要手动进行配置的插件。脚本方案可以更加便捷灵活的完成适配工程,执行测试,报告生成并通知的全自动化流程。如果您对这方面感兴趣或是有任何需求,请随时与我们取得联系,我们很乐意与您进行详细讨论。

bdcb7032-5d95-11ee-9788-92fbcf53809c.png总结
目前,持续集成在汽车软件测试行业已经成为一种必要的实践。许多的汽车公司都建立了专门的持续集成流程,来管理和执行软件的构建、部署、测试和监控等活动。同时,也另有一些新兴的技术和工具,如云计算、微服务架构、DevOps实践等,为持续集成提供了更多的可能性和挑战。
对于VectorCAST来说,它不仅仅在持续集成领域提供了卓越的支持,还可以通过与Docker集成来提供更灵活的测试环境,VectorCAST还支持与多种需求管理服务器(如Polarion、CodeBeamer等)进行集成。同时,VectorCAST还提供了整个测试过程的命令行接口,并支持自定义生成报告等多种功能。
如果您想了解更多有关信息请联系北汇信息,北汇信息作为Vector公司的中国合作伙伴,拥有专业的VectorCAST测试服务团队,可为您提供周全完整的研发、测试解决方案及优质的技术支持服务。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 测试
    +关注

    关注

    7

    文章

    3763

    浏览量

    124357
  • 软件
    +关注

    关注

    65

    文章

    3985

    浏览量

    83985
  • Vector
    +关注

    关注

    2

    文章

    40

    浏览量

    8309
收藏 人收藏

    评论

    相关推荐

    高质量C编程指南—林锐

    高质量C编程指南—林锐
    发表于 08-03 08:44

    高质量C++、C编程指南

    高质量C++、C编程
    发表于 08-06 11:58

    高质量C++&C 编程指南

    高质量C++&C 编程
    发表于 08-19 23:37

    高质量C++与C编程指南

    高质量C++与C编程
    发表于 03-09 10:54

    高质量C++C编程指南》林锐

    高质量C++C编程指南》林锐.pdf
    发表于 09-12 22:19

    图书推荐:高质量C++编程指南

    高质量C++编程
    发表于 06-12 13:49

    jenkins是什么?有何应用

    持续集成jenkins是一款功能很强大的解决方案,实践出真知,边实践变了解,实战了下jenkins的应用,顺便提高下工作效率下文及下图提到的PBX即为我要监控的嵌入式设备
    发表于 12-21 08:21

    如何在持续集成开发流程中使用Jenkins和Docker?

    指南介绍了如何在持续集成开发流程中使用Jenkins和Docker。 本
    发表于 08-02 10:50

    高质量C++C编程指南

    高质量C++C编程指南高质量C++C编程
    发表于 01-15 16:26 3次下载

    高质量C语言编程指南

    高质量C语言编程指南 C语言学习教程大全
    发表于 09-02 16:54 13次下载

    高质量的c编程指南

    高质量的c编程
    发表于 10-26 16:00 13次下载
    <b>高质量</b>的c编程<b>指南</b>

    高质量C 编程指南

    高质量C 编程
    发表于 10-30 10:10 7次下载
    <b>高质量</b>C 编程<b>指南</b>

    jenkins持续集成原理

    jenkins持续集成原理。持续集成就是为解决程序代码提交质量低,提交内容导致原有系统的bug,按时或按需自动编译版本,自动进行自动化测试。
    的头像 发表于 02-06 11:43 3580次阅读

    Jenkins是什么_Jenkins常用功能_jenkins的使用总结

    Jenkins是什么,Jenkins常用功能以及jenkins的使用总结。Jenkins 是一个可扩展的持续集成引擎。Jenkins其实就是一个工具,这个工具的作用就是调用各种其他的工具来达成你的目的。
    发表于 02-06 14:44 2.7w次阅读
    <b>Jenkins</b>是什么_<b>Jenkins</b>常用功能_<b>jenkins</b>的使用总结

    关于持续集成与基于模型的设计的分析和应用

    持续集成工具进行并行开发。Git、GitLab、Jenkins这个组合适用于任意大小规模的持续集成开发模式。持续集成也是敏捷开发的一个最佳实践。而MBD的模式——早期验证、虚拟集成完全符合敏捷开发的理念。
    的头像 发表于 09-12 09:10 1618次阅读
    关于<b>持续集成</b>与基于模型的设计的分析和应用