1 .背景智能座舱是当前汽车行业开发设计和差异化竞争的焦点,目前智能座舱控制器大多是传统IPK、HMI、HUD、DMS等几个控制器集成后的“一机多屏”复杂系统。 在软件体系结构中,多操作系统也是其一大特点,如安卓与QNX系统集成是最常见的方案,硬件接口通常为车载以太网、CAN/CAN FD及LVDS等
座舱控制器由于自身的特点,其功能测试案例多达数万至十数万个,依靠传统的手动测试,需要大量的人力资源投入,难以满足越来越短的项目开发周期和软件快速迭代的需要。 为了提高测试效率,必须采用自动化/半自动化的方式完成座舱域控制器的功能测试。
2 .测试内容分析从智能驾驶舱部级功能测试角度看,主要集中在以下几个方面的测试:
车辆和环境信息显示功能:中心控制、仪表、硬盘、流媒体后视镜、电子后视镜、a柱等显示交互娱乐、浏览功能:本地和在线媒体播放、游戏和文档及网页驾驶资讯设置、APP安装/卸载等ar导航、环视、向后看、看晚上等功能车内监控:司机脸部、眼睛监测功能和健康监测交互功能:语音交互、手势控制用户ar
3 .测试系统框架从座舱自动化测试系统的角度出发,满足智能座舱测试系统可以分为以下几个主要功能模块:
常规车载网络和IO仿真采集、故障注入UE仿真、监测图像仿真、UI监测语音仿真和识别无线信号相关仿真完整测试系统示意图如下,本文基于Eggplant进行UE仿真
图1 :测试系统框图
4 .基于eggplant的自动化测试概述4.1 .软件和方案框架eggplant是TestPlant公司开发的黑匣子自动化测试工具,通过VNC/RDP传输协议连接PC和DUT,实现跨平台基于Android和Windows )中提供的图像和OCR算法实现DUT图像的监控,便于访问图像的各种状态(颜色和亮度),并支持使用Flash的动态环境中的行为。 通过记录用户的操作流程,可以自动生成测试脚本。 此外,SenseTalk语言面向非开发人员集成,使测试人员无需了解基本代码和体系结构,并且易于使用。
支持与Vector CANoe集成,从CANoe发送操作命令,自动将执行结果生成为HTML格式,便于查看。
图2:CANoe vTESTstudio Eggplant的总体方案框架
4.2 .实现流程概述本次以安卓系统的DUT为例,进行CANoe、vTESTstudio、Eggplant的联合调试,调试流程主要分为以下几个步骤:
打开33558www.Sina.com/DUT调试权限,连接到PC,设置Android系统的连接设置,并生成用于通过Eggplant软件连接到dut的服务器端IP地址和端口号。
图3 )连接效果使用图http://www.Sina.com/eggplant编写、执行和测试UE模拟和UI监视的基础脚本。 使用Eggplant的Log功能记录测试结果。
图4 :根据eggplant执行接口http://www.Sina.com/Eggplant软件提供的API,使用CANoe软件调用eggplant测试工序。 CANoe项目需要提供有关Eggplant测试项目的信息,包括软件安装位置、测试工程存储地址、端口号和密码。
图5 )在CANoe工序中配置基于Eggplant测试工序信息http://www.Sina.com/SOA实现的客舱域控制器,包括车辆域控制器、自动驾驶域控制器、互联网连接控制器等针对这一需求,可以通过使用新版CANoe导入SOME/IP、mqi .arxml等数据库来高效地模拟SOA APP应用。 根据我们的经验,基于CANoe实现这个模拟更高效、更专业。
基于33558www.Sina.com/vteststudio软件的图形编程方式实现测试脚本编写,编译生成可执行文件,导入CANoe进行测试执行。
图6 )根据vTESTstudio实现测试脚本在http://www.Sina.com/canoe上读取、判断Eggplant测试结果,并将原始图像等打印在测试报告中,便于分析测试问题。
图7 :测试报告的样式
4.3. DEMO示例与实际的DUT建模有密切的显示界面关系,因此以下视频以基于Android的手机调试为例。
【北汇信】
息】如何实现汽车智能座舱域控制器功能自动化测试?
UE仿真是为模拟用户操控,如软按键单击/双击、屏幕滑动,其难点:
·适配多级窗口操作·操作界面设计变更后和被操作对象更换后的重新适配·实现特殊操控方式,如多指点击/滑动、两指缩放 表1:UE仿真测试方案对比UI和UE监测用以判断功能逻辑正确性和性能,其难点:
· 多屏互动· 显示风格切换、APP动态加载识别适配· 动态闪烁类图标监测、屏幕响应时间监测 表2:UI和UE监测测试方案对比6. 总结
从早期仪表/中控至现在的智能座舱,对其自动化测试的尝试,已有十多年的时间,当下的被测对象更为复杂,测试方案不断升级,测试要求也不断提高,此时需要我们从测试需求本源,结合座舱域控制器的特点,进行理性分析或复盘。我们需要自动化但不一味追求全自动化,需要细分不同测试功能,其测试工作的资源消耗,其自动化的可行性和适应性,其投入产出比等多重因素下进行综合考虑。
北汇信息在智能座舱领域相关的部件、系统、实车的测试规范/用例开发、测试实施和测试系统搭建已有近十年的积累,可提供“组合式”的技术方案和合作模式,以期达到在测试效果和效率、性价比之间的平衡。此次选择TestPlant的Eggplant 软件作为新的尝试,并对相关仿真和监测方案做了简要的比对,希望可以给大家一定的参考和启发。最后,十分感谢TestPlant公司(Keysight)和Vector公司的同仁伙伴们给予的大力支持。
参考文献【1】 Vector - Eggplant integration.pdf
【2】 基于Eggplant的Mac_OS_X平台上软件自动测试_灵巧的金毛.pdf
【3】 http://docs.eggplantsoftware.com
【4】 GUI-Testing_拉长的人生_201706_PressArticle_EN.pdf
作者:北汇信息——今朝酒醉、魔幻的毛衣