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

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

3天内不再提示

智能座舱域控制器功能自动化测试方案

北汇信息POLELINK 2022-08-01 14:13 次阅读

1、背景

智能座舱是当前汽车行业开发设计和差异化竞争的焦点,当前智能座舱控制器多为整合了传统IPK、HMI、HUD、DMS等若干控制器之后的“一机多屏”的复杂系统。在软件架构上,多操作系统也是其一大特点,如整合安卓和QNX系统是最常见的方案,而在硬件接口上通常是车载以太网CAN/CAN FD以及LVDS等。

座舱域控制器由于自身特点,其功能测试用例多达几万条甚至十几万条,完全依靠传统手动测试,需要投入大量的人力资源,难以满足越来越短的项目开发周期和软件快速迭代的需求。为了提高测试效率,需采用自动化/半自动化的方式以完成座舱域控制器的功能测试。

2、测试内容分析

从智能座舱域部件级的功能测试角度来看,主要聚焦如下几方面的测试:

a)车辆和环境信息显示功能:中控、仪表、HUD、流媒体后视镜、电子后视镜、A柱等显示交互

b)娱乐、浏览功能:本地和在线的媒体播放、游戏以及文档和网页浏览阅读等

c)配置、设置和控制功能:个人账户、车辆/驾驶信息设置、APP安装/卸载等

d)AR导航、环视、后视、夜视等功能

e)车内监测:驾驶员/乘员头、脸、眼监测功能和健康监测

f)交互功能:语音交互、手势控制

g)用户APP在线和离线服务功能

h)连接功能:蓝牙、WiFi、USB4G/5G

3、测试系统框架

从座舱自动化测试系统的角度,可将满足智能座舱测试系统划分为如下几个主要的功能模块:

a)常规的车载网络和IO仿真采集及故障注入

b)UE仿真及监测

c)图像仿真及UI监测

d)语音仿真及识别

e)无线信号相关的仿真

完整测试系统示意图如下所示,本文将重点介绍基于Eggplant实现UE仿真及UI监测的流程和基本方法及各种主流方案的对比。

pYYBAGLl97CAIu0sAAEuQ8gZjLs016.png

图1:测试系统框图

4、基于Eggplant的自动化测试简介

(1)软件及方案框架

Eggplant是TestPlant公司研发的一款黑盒自动化测试工具,通过VNC/RDP传输协议连接PC和DUT,可跨平台(Linux、Mac、ISO、QNX、安卓和 Windows)使用。其基于图像和OCR算法实现对DUT图像监测,方便访问图像的各种状态(颜色及亮度),同时支持在使用Flash的动态环境中运行。可通过记录用户操作流程,自动生成测试脚本。且集成的SenseTalk语言,面向非开发人员,测试者无需了解底层代码和架构,简单易用。

支持与Vector CANoe集成,通过CANoe发送操作指令,执行结果自动生成HTML格式方便查看。

poYBAGLl99OAcU5uAACLSY8Gr5o341.png

图2:CANoe+vTESTstudio+Eggplant整体方案框架

(2)实现流程概述

本次以安卓系统的DUT为例,进行CANoe、vTESTstudio、Eggplant联合调试,调试过程主要分为如下步骤:

a)测试系统与DUT连接设置

打开DUT调试权限,连接PC,对安卓系统进行连接设置,生成Server端的IP地址和端口号,用于在Eggplant软件中对DUT进行连接。

poYBAGLl9-mAdB_DAAEAHRf83Aw013.png

图3:连接效果图

b)Eggplant测试工程创建

使用Eggplant进行UE仿真及UI监测底层脚本编写、运行并执行测试。使用Eggplant中的Log功能,对测试结果进行记录。

pYYBAGLl9_iAPGaZAAHYgvTdi2E729.png

图4:Eggplant运行界面展示

c)CANoe对Eggplant测试工程调用

根据Eggplant软件提供的API,使用CANoe软件对Eggplant测试工程进行调用。在CANoe工程中需填写Eggplant测试工程相关信息,如:软件安装地址、测试工程存储地址、端口号和密码等信息。

poYBAGLl-AWAHEbFAAA5wFaHOLk399.png

图5:在CANoe工程中配置Eggplant测试工程信息

d)“对手件”的仿真实现(可选)

针对基于SOA实现的座舱域控制器,需仿真与之交互的“对手件”,如车辆域控制器、自动驾驶域控制器、网联控制器,针对此需求,可以借助新版CANoe对SOME/IP、MQTT等协议的支持,通过导入数据库(如.arxml)等方式高效的完成SOA应用的仿真,以我们的经验来看,基于CANoe实现该仿真更为高效和专业。

e)测试用例实现

基于vTESTstudio软件图形化编程方式实现测试脚本编写,编译生成可执行文件,导入到CANoe中进行测试执行。

poYBAGLl-BSAWtbxAAC4CZp4X_c439.png

图6:基于vTESTstudio实现测试脚本编写

f)测试执行与分析

通过CANoe对Eggplant测试结果进行读取和判断,并将原始图像等打印在测试报告中,便于对测试问题进行分析。

pYYBAGLl-CGAFlTmAACK8iwlT3c788.png

图7:测试报告样式

(3)DEMO示例

由于真实DUT造型和显示界面涉密原因,如下视频以基于安卓手机为对象的调试作为示例。

poYBAGLl-GiAYE4fAAAUCoWkmtI390.png

视频1:CANoe和Eggplant UE仿真及UI监测自动化测试效

5、方案对比

(1)UE仿真测试方案对比

UE仿真是为模拟用户操控,如软按键单击/双击、屏幕滑动,其难点:

a.适配多级窗口操作

b.操作界面设计变更后和被操作对象更换后的重新适配

c.实现特殊操控方式,如多指点击/滑动、两指缩放

poYBAGLl-K-AUQ4HAAGRC1mOcwA577.png

表1:UE仿真测试方案对比

(2)UI和UE监测测试方案对比简介

UI和UE监测用以判断功能逻辑正确性和性能,其难点:

a.多屏互动

b.显示风格切换、APP动态加载识别适配

c.动态闪烁类图标监测、屏幕响应时间监测

poYBAGLl-QKAPtWqAAG_9k8-aX8863.png

表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_HanserAutomotive_201706_PressArticle_EN.pdf

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

    关注

    112

    文章

    15228

    浏览量

    171202
  • 智能座舱
    +关注

    关注

    4

    文章

    762

    浏览量

    15926
收藏 人收藏

    评论

    相关推荐

    荣威RX5智能驾驶域控制器方案

    域控制器的线速端子分布在域控制器的左右两侧;右侧主要分布电源、IO、通信接口、GPS天线等端子;左侧主要分布了环视、周视、前视的线束端子。
    发表于 04-03 11:22 236次阅读
    荣威RX5<b class='flag-5'>智能</b>驾驶<b class='flag-5'>域控制器</b><b class='flag-5'>方案</b>

    座舱域控制器硬件架构方案:SoC + MCU

    座舱域控制器(Cabin Domain Controller)是一种用于航空飞机中的电子系统,用于集中管理和控制飞机内部的各种功能和系统。它是飞机电气系统的关键组件之一。
    的头像 发表于 02-01 11:20 3851次阅读
    <b class='flag-5'>座舱</b><b class='flag-5'>域控制器</b>硬件架构<b class='flag-5'>方案</b>:SoC + MCU

    智驾、座舱、泊车三合一域控制器解析

    用双Orin打造智驾、座舱、泊车三合一域控制器,硬件上难度不大,难度都在软件上。今天我们就来看看国内某大厂的智驾、座舱、泊车三合一域控制器
    的头像 发表于 01-29 10:37 568次阅读
    智驾、<b class='flag-5'>座舱</b>、泊车三合一<b class='flag-5'>域控制器</b>解析

    智能座舱包含哪些功能 智能座舱测试包括哪些方面?

    功能测试测试座舱的各种功能是否正常,如智能控制系统
    的头像 发表于 01-16 10:57 955次阅读

    哪吒汽车、高通和车联天下将携手开发智能座舱

    近日,哪吒汽车、高通和车联天下共同签署了战略合作协议,宣布将携手开发智能座舱。根据协议,三方将基于第四代骁龙座舱平台及Snapdragon Ride Flex SoC,为哪吒汽车打造最新一代
    的头像 发表于 01-11 15:26 541次阅读

    泰克智能座舱测试白皮书发布

    伴随智能座舱领域数字化、智能化的趋势, 多屏联动、语音识别、手势控制、增强现实、云交互成为主流,座舱在实现丰富
    的头像 发表于 01-10 11:36 416次阅读

    智能座舱测试包含哪些 智能座舱包含哪些功能

    智能座舱测试的意义在于确保智能座舱功能、性能、安全等方面达到一定的标准,以满足用户需求和保证用
    发表于 01-09 17:22 570次阅读

    LabVIEW与Tektronix示波器实现电源测试自动化

    自动化和数据处理的智能化。通过LabVIEW编程环境连接Tektronix示波器,可以精确设置测试参数,如电压、电流波形等,确保每次测试的一致性和准确性。
    发表于 12-09 20:37

    将成“标配”?自动驾驶域控制器深度解析

    、大陆等Tier 1企业认为,以域为单位的DCU (域控制器)集成化架构是最佳解决方案自动驾驶系统架构 博世经典的五域分类将整车分为动力域、底盘域、座舱域/
    的头像 发表于 11-16 14:52 1393次阅读
    将成“标配”?<b class='flag-5'>自动</b>驾驶<b class='flag-5'>域控制器</b>深度解析

    动力域控制器功能测试项目

    动力域控,顾名思义就是动力相关的域控制器,对于纯电车而言,包括电池管理、电机控制器、空调控制器、DCDC等等,下面是比亚迪的动力域控制器
    的头像 发表于 10-23 14:26 808次阅读
    动力<b class='flag-5'>域控制器</b>的<b class='flag-5'>功能</b>和<b class='flag-5'>测试</b>项目

    航盛电子荣膺高工“2023年度智能汽车座舱域控制器TOP10供应商”

    由高工智能汽车研究院发起的2023年度智能汽车行业评选结果已揭晓,航盛凭借在智能汽车电子领域强劲的综合研发实力和在智能座舱
    的头像 发表于 09-12 20:21 1333次阅读
    航盛电子荣膺高工“2023年度<b class='flag-5'>智能</b>汽车<b class='flag-5'>座舱</b><b class='flag-5'>域控制器</b>TOP10供应商”

    润芯微荣获“2023年度座舱域控制器TOP10供应商

    8月31日,由高工智能汽车发起的2023年度智能汽车行业评选在上海揭晓。润芯微凭借着在智能座舱方面的综合实力,荣获“2023年度座舱
    发表于 09-02 09:53 671次阅读

    域控制器是什么 域控制器介绍

    什么是域控制器域控制器的概念最早由以博世、大陆为首的Tier1提出,它的出现是为了解决信息安全以及ECU瓶颈的问题。域控制器因为有强大的硬件计算能力与丰富的软件接口支持,使得更多核心功能
    的头像 发表于 07-25 17:51 3132次阅读
    <b class='flag-5'>域控制器</b>是什么 <b class='flag-5'>域控制器</b>介绍

    MCU控制器是什么?MCU控制器有哪些作用?

    各种电子产品中得到广泛应用。例如,家电、汽车、工业自动化、通信设备、医疗设备、安防系统等领域都可以使用MCU控制器实现各种智能控制和数据处理功能
    发表于 05-05 14:59

    什么是域控制器?OEM为什么要转向域控制器

    随着诱人的用户体验、电气化和汽车ADAS功能的出现,车辆架构正强烈朝向域控制器发展。
    发表于 05-04 17:45 731次阅读
    什么是<b class='flag-5'>域控制器</b>?OEM为什么要转向<b class='flag-5'>域控制器</b>?