智能网联汽车对软件测试领域研究的影响 厚势汽车
随着互联网技术的日新月异,传统的汽车行业发展到这一阶段诞生了性的产物-智能网联汽车。智能网联汽车作为一个新兴的跨界产品,对其所做的测试除了传统汽车测试包括的软硬件及接口测试外,还必须在结合智能交通系统(ITS)的基础上,对其操作系统及移动应用软件进行全面有效的测试。
仿真技术,机器人技术及云端技术作为可以提高测试效率和安全性的手段被应用到智能网联汽车的测试中来。智能网联汽车的测试是一个复杂的过程,如何把不同阶段、不同类型的测试结合在一起以及如何评价智能网联汽车的质量是对软件测试领域提出的新挑战。
本文来自 2018 年 1 月 20 日出版的《计算机与数字工程》,作者是江苏省软件产品检测中心的工程师张懿和上汽集团的工程师刘焰。
全球工业智能化的发展,国内相继提出了「中国制造 2025」[1] 和「互联网+」[2] 的发展规划。制造业和互联网行业的跨界产物-智能网联汽车,国内对其的定义为:搭载先进的车载传感器、、执行器等装置,融合现代通信与网络技术,实现车与人、车、路、后台等在内的智能信息交换共享,具备复杂的环境感知、智能决策、协同控制和执行等功能,并可最终替代人类操作的新一代汽车。
目前,我国智能网联汽车的测试还处于起步阶段,首个「国家智能网联汽车(上海)试点示范区」封闭测试区已由工信部批准在上海嘉定正式开园;「智能网联汽车产业技术联合创新中心」也正在筹建中 [3] ;中国软件评测中心已经着手智能网联汽车的测试工作。
智能网联汽车的开发中已经采用传统软件开发中使用的 V 模型,而在系统开发的每个阶段都进行相应的测试是实现 V 模型开发的前提 [4] 。智能网联汽车作为继电脑、手机、平板后的第四个可大规模扩展应用的终端,除了实现自身的汽车驾驶功能以外,还附加了许多其他的功能,这就导致了智能网联汽车测试中需要数量极其庞大的测试用例。这些测试用例除了要覆盖所有的功能点以外,还需要满足智能网联汽车的行业标准和规范以及安全需求。
针对智能网联汽车实现汽车驾驶功能方面的测试,除了在单元测试阶段由内部测试人员进行基本白盒测试以外,在系统测试阶段还应该引进第三方测试机构借助 LDRA Testbed 等白盒测试工具进行严格的代码级安全测试,完成 100% 的语句覆盖,分支覆盖和 MCDC 覆盖。而由汽车产业软件可靠性协会(MISRA)提出的 C 语言开发标准 MISRA C 是一个已经被作为工业标准的以「安全第一」为目的的 C 编程规范。通常认为,如果能够完全遵守 MISRA C 标准中包括的 127 条 C 语言编码标准,则 C 代码是易读、可靠、可移植和易于维护的。软件开发和测试中均应遵从 MISRA C 标准,才能在代码层面保证智能网联汽车的驾驶安全。
智能网联汽车由于与智能交通密不可分的关联,对移动通讯和大数据分析方面提出了更高的要求。智能网联汽车由于时时刻刻处于车联网系统中,既上传自身行驶数据和车辆情况,也查看车联网系统中其他智能网联汽车的数据并给驾乘人员提供行驶建议,这就对智能网联汽车网络部分的性能和压力测试提出了需求。在以往的软件测试中,一些内部使用,用户数量并不多的软件系统跳过了性能和压力测试,直接进行验收交付,但是在智能网联汽车测试领域,性能和压力测试是在进入交付环节前必须完成的工作,这是实现智能、网联的前提和基础。
智能网联汽车的安全性测试主要体现在以下几个方面:1)智能网联汽车驾驶身份识别;2)网络通信中隐私信息的防窃取;3)车载应用系统中交易和支付的安全性;4)智能网联汽车系统的防病毒破坏及系统自恢复能力。
智能网联汽车和以智能网联汽车为核心的智能交通系统已经是公认的解决汽车产业高速发展和保有量激增与交通安全和交通行为效率等矛盾的根本途径。智能网联汽车涉及人-车-环境闭环系统[4],如图 1 所示,三者互相影响,其复杂程度远超汽车本身和单车行驶情况。
模拟仿真技术早已成为汽车产品研发的重要手段之一,而在测试领域还未广泛应用,现阶段大多数的测试基于实验场地居多,不仅成本高、开发周期长、可重复性差,且在测试阶段往往具有较高的危险性。比较知名的配有虚拟实验场景的车辆仿真软件主要有 Carsim、Prescan、Pro-SiVIC、IPG-CarMaker、Dspace ASM 等 ,这些软件都具有各自的仿线]。
其中,Dspase ASM 已经包含了环境模块 ASM Traffic,对确定性的交通情况的模拟已经能够基本实现,但是定义过程复杂且不具备交互能力,难以满足随机场景的测试需求。可以说真正满足对包含人-车-环境等在内的智能交通系统(ITS)模拟的仿真软件还尚未成型。
目前大多数的研究都是基于 Matlab/Simulink 软件环境进行建模和仿真计算与验证。结合模糊控制、自适应模糊 PID 控制算法 [6]、神经网络算法、和虚拟现实技术,开发更加针对智能化研究和测试需求的仿真系统,具有长远的意义。
2016 年上半年上海大众公布了南京分工厂的先进自动化生产过程,向普通用户揭开了国内首条机器人生产线的神秘面纱。由工人和上百个机器人的合作,经过生产流程:从冲压-车身-油漆-总装-四轮定位和灯光检测-滚轴试验检测-高速环道试车-户外颠簸路面测试-淋雨测试-报交线-验收线后,一台中级车新款就可以交付使用了,这是现代科学技术带给传统制造业的惊喜,是生产力上的。
而在生产设计和汽车概念上的创新当下非智能网联汽车莫属。在智能网联汽车不可避免的测试压力下,如何在汽车生产环节就把对汽车的测试融合其中,提高智能网联汽车的产量和质量,是未来即将面临的现实问题。
在智能网联汽车的测试过程中,除了代码阶段的白盒测试以外,其他的测试用例均需在每台智能网联汽车上重复执行,这项工作如果在生产完成以后由人工完成,不仅延长了交付时间,更需要大量的人力成本。诸如一些涉及自动驾驶功能的测试可以在高速环道试车和户外颠簸路面测试阶段由自动驾驶机器人测试完成并自动记录和反馈测试结果。
国外驾驶机器人的关键技术还处在保密阶段,目前拥有该项技术的主要有德国、美国、英国日本 [7]。而在 2015 年 11 月福特汽车与他们的自主解决方案公司(ASI)已经共同研制出了机器人测试员并且已经正式对外公布,它可以模拟人类测试员的各种驾驶动作与技巧。在 2017 年福特生产的 F 系列将会采用机器人测试员参与到汽车测试工作中来。我国也有自行研制的驾驶机器人,但是在人工智能方面与国外技术相比还有较大差距。
采用驾驶机器人进行测试工作,可以消除人为因素的影响,而且更为规范与机械化,误差更小。在效率方面,驾驶机器人可以 24 小时不间断的工作,且由于其可编程性,在测试不同车型的时候,只需要更新一下程序即可立即进行测试工作。一部分更为先进的驾驶机器人还带有自主学习的功能,所有这些技术都大大提升了测试的效率。
机器人虽然在人工智能方面取得了很大的进步并且已经在工业领域逐渐应用和推广,但是它不具备和人类同等的思维能力,只适合进行大量的重复性较高的测试工作。在智能网联汽车的测试过程中,机器人并不能完全替代人类的测试,一些复杂程度较高、前置条件较多的模块还是需要手工测试。在现阶段,智能网联汽车隶属于一个新兴的事物,与之相配套的测试技术、测试标准[8]及测试环境还处于研究探讨和实验性的阶段。不过在人工智能迅猛发展的当下,相信不久的将来机器人能够取代人工进行更高程度的测试工作。
智能网联汽车在测试过程中虽然可以被看做一个大型的移动终端,能够借用一些其他移动终端的测试方法和测试管理经验,但是由于其交通工具的属性,决定了它与其他移动终端还是有着比较大的区别。概括来说智能网联汽车是一个涵盖移动终端功能的交通工具,它的测试很大一部分并不是在 PC 上完成的,且由于产量产生了巨量的测试工作。这种情况下,测试云的引入对生产企业来说是一个非常必要的选择。如图 2 所示,智能网联汽车生产厂家通过自助测试的方式,分担了一部分测试压力,既节省了成本同时也提高了效率。
在配置好环境,开放好端口后,登陆测试云可随时随地进行不间断的功能和性能测试,获得实时的、自动的、更加客观和直观的测试结果。这些测试结果中不仅仅包括发现的缺陷,还有诊断和优化分析。
智能操作系统上的移动应用由于开发方普遍规模较小,没有很强的安全防护能力,如果不经过系统和严密的安全测试,很容易影响操作系统安全,严重的还会危及智能网联汽车的行驶安全。构建智能网联汽车测试云上的移动应用安全测试平台,能够实时地检测和分析应用是否被篡改,是否是恶意软件。对于一些涉及金融的银行类和支付类软件来说,这些检测尤为重要。
智能网联汽车测试云除了提供测试服务以外,还可以实现在线监测的功能。通过传感器及网络通讯服务实时的监测智能网联汽车的软硬件工作情况,在隐患发生时提醒用户及时校正系统或停止使用汽车。当然,这部分功能的使用必须经过用户的授权。
通过各类测试的智能网联汽车并不能直观的体现其产品质量,可以依据 ISO/IEC 25010 质量度量模型 [9] 对其进行质量评价。如图 3 所示,它将软件质量总结为 8 大属性,36 个质量子特征属性:
参考不同学者提出的面向领域的应用软件评价指标,设计得出智能网联汽车评价指标体系,该体系包含 6 个第一层级评价指标和 17 个第二层级评价指标 [10],如图 4 所示:
AUDIT 起源于德国,它基于「让用户满意」的思想理念 [11],是国际上通用的汽车质量评定、审核方法。AUDIT 不是一般意义上的质量符合性检验,它站在消费者的立场上,需要判断是否满足顾客的需求,缺陷越少越满意,它促使企业主动地去满足顾客需求,是属于建立在符合性基础上的适应性检验。
AUDIT 是企业模拟用户对自己的产品质量进行内部监督的行为,适用于所有批量生产、质量稳定的产品,只要是存在着顾客关系的环节,并且顾客对安全、价格、舒适、环保等方面有要求的产品和服务,均可采用 AUDIT 方法来评审其质量。
参照 6.1 中提出的智能网联汽车软件质量模型,其能性、安全性、可靠性、易用性、效率五个评价指标与客户满意度有比较密切的关联,可以在达到 ISO/IEC 25010 质量要求基础上采用 AUDIT 评审方法,以此持续性改进智能网联汽车的软件质量。结合智能网联汽车其他环节的 AUDIT 评审需求,可以设计开发出智能网联汽车质量评价系统,如图 2 所示,在测试云平台上部署环境,与智能工厂、智能制造系统协同工作,可以随时随地对质量问题进行追溯,避免了人工主观因素的影响,极大地提升了智能网联汽车的质量改进效率。
智能网联汽车的测试是一个结合软硬件、跨多个领域的复杂过程。自 2015 年 10 月全球技术领先的特斯拉公司向其车主推送含 Autopilot 自动驾驶系统的 7.0 版本以来,已在全球范围内发生多起严重事故。智能网联汽车的测试之路任重而道远,它已跨越了传统测试的范畴,向更广阔的领域发展。测试人员应拓宽思维,涉猎工业自动化控制,传感器技术,图像识别,智能交通等方面的知识,为设计出高效实用的测试用例而努力,集众家之长推进智能网联汽车的测试研究和发展。
[1] 郭朝先,王宏霞. 中国制造业发展与「中国制造 2025」规划 [J]. 经济研究参考,2015(31):3-13
[2] 陶永,王田苗,李秋实,等. 基于「互联网+」的制造业全生命周期设计、制造、服务一体化 [J]. 科技导报,2016(4):45-49
[3] 宋杰. 国家首个无人驾驶汽车测试基地正式开园 [J]. 中国经济周刊,2016(24):74-75
[4] 李霖,朱西产. 智能汽车安全技术评价方法研究 [C]. //2015 中国汽车工程学会年会论文集. 上海,同济大学,2015.488
[6] 严玉龙. 基于 PLC 的汽车环境模拟试验控制系统的设计与实现 [D]. 南京:南京理工大学,2014.43-44
[7] 陈刚,张为公,龚宗洋,等. 用于汽车驾驶机器人的车辆性能自学习方法 [J]. 中国机械工程,2010(2):491-495
[8] 张亚萍,刘华,李碧钰,等. 智能网联汽车技术与标准发展研究 [J]. 上海汽车,2015 (8):55-59
[10] 陈惠,涂强,范正帅,等. 互联智能汽车关键技术与发展趋势[J]. 中国集成电路,2015(6):24-30
[11] 高和鸿,郝建彤. 推行「AUDIT」是提高我国产品质量水平的客观要求[J]. 中国流通经济,2002(4):50-53
声明:本文由入驻搜狐公众平台的作者撰写,除搜狐官方账号外,观点仅代表作者本人,不代表搜狐立场。
- 标签:本站
- 编辑:孙子力
- 相关文章
-
智能网联汽车对软件测试领域研究的影响 厚势汽车
随着互联网技术的日新月异,传统的汽车行业发展到这一阶段诞生了性的产物-智能网联汽车…
- 国际汽车软件测试联盟
- 海外媒体评测发布:20个主流海外科技评测媒体盘点
- 数码影像评测_泡泡网
- 山海经纬软件测试笔试题和面试题
- 还要说长安档次低可能会有不少人表示不认可了!
- 8车道社区:汽车发烧友也有自己的知乎了
- 北京车灵通科技发展有限公司面试经验
- 长安汽车你快醒醒!长安福特已经靠不住请尽全力发展自主品牌
- 推荐几个欧洲网站方便查询国外市场标致车销量、质量等信息
- 长城汽车面试问题