背景

T-Box是实现汽车车联网的一个关键环节,从起初单纯的实现车辆信息采集,已发展到具有车辆信息监测及信息交互(V2X)、车辆远程控制、安全监测和报警、远程诊断、边缘计算等多种离线和在线的应用功能的载体。为保障T-Box功能的正常运转,对其进行功能测试就尤为重要。

T-Box作为“边缘节点”,与车内控制器通过传统总线或车载以太网进行信息交互,与车外TSP(Telematics Service Platform)通过蜂窝基站无线技术进行信息交互。

从测试实现的角度,针对T-Box功能测试而言,由于自动化测试所需的“Input仿真”与“Output监测”的闭环存在一定难度,故基本通过手动或半自动化的传统方式进行测试,依靠“人在环”方式记录测试数据以及判断测试结果。但该方式测试效率低且覆盖度受限,难以满足研发的快速迭代和深度验证的要求。

本文将介绍一种实现T-Box部分功能(与移动终端交互的功能)的自动化测试技术路径以及相关测试经验与大家分享。

测试对象和原理分析

T-Box与手机移动端的主要交互功能如下:

图1 T-Box与手机端主要交互功能内容

车内T-Box与手机端的交互流程如下:

图2 车内T-Box与手机端交互流程

以车主希望能够通过手机中的APP查询到车辆当前的状态信息为例:

  • 车辆通过卫星获取位置信息
  • 车内T-Box通过传统总线或车载以太网获取车辆当前状态信息
  • 车内T-Box通过蜂窝基站将信息传递给TSP服务器
  • TSP服务器通过蜂窝基站将数据传递到车主手机APP中

从T-Box与手机端交互流程来分析,要实现T-Box功能自动化测试,需要以T-Box为中心搭建由T-Box车内交互平台(车内网络)与T-Box车外交互平台(TSP)而组成的闭环系统。其中T-Box与车内交互可通过总线仿真与监测来实现,而T-Box与TSP交互的无线信号仿真较困难。但是测试T-Box功能的最终目的是验证APP的触发、显示与T-Box功能逻辑是否满足要求。

基于此,本方案应用半实物仿真的理念,把T-Box、TSP以及手机APP之间的基于无线通信及基于无线的功能实现作为整体(假定通信稳定,逻辑正常),用户在移动端的操作当作T-Box的“信号激励”。

因此,实现自动化的关键点在于如何“程控”该“信号激励”源,也就是如何对手机中与车辆交互的APP进行自动操控。为此选择了安卓手机作为被操控对象,开发了基于CANoe+vTESTstudio+总线接口设备+VT系统+安卓调试接口的测试验证方案。

测试方案设计及实测结果

T-Box功能自动化测试系统框架

图3 T-Box功能自动化测试系统框图

该测试系统可按照设定好的测试流程触发手机APP进行自动测试并生成报告,可大大提高T-Box的测试效率,严格按照测试脚本进行,避免人为偶发性漏测。

本次将在实车测试环境下,对测试方案的实现进行验证分析。

T-Box实车测试环境系统框架

图4 T-Box实车测试环境系统框图

软硬件工具组成及作用

  • CANoe软件:测试执行软件

    包含人机交互界面,实现T-Box功能手动测试,以及自动化测试脚本运行;集成adb指令,实现对手机APP操控

  • vTESTstudio软件:图形化编程软件

    根据T-Box功能测试规范编写测试用例

  • 安卓手机:安装车辆控制APP

    执行来自CANoe的操控指令,与TSP服务器建立通信连接并收发数据

  • 通信接口设备:监测车辆内部总线报文
    实现测试的闭环
    测试环境搭建实物,见下图:

图5 测试环境搭建

手机控制指令集成及手动测试界面开发将手机APP的控制指令集成到CANoe软件中,并开发如下的人机交互界面:

- 控制界面: 控制手机进入开启/关闭车窗界面,并进行开启/关闭车窗软按键的点击

- 显示界面: 车窗状态栏会同步显示实际车窗位置

- 数据记录: 记录和显示执行的操作步骤和结果


图6 CANoe中手机APP指令集成和人机交互界面

自动化测试脚本开发

测试执行完成后,CANoe自动生成HTML格式测试报告,报告中呈现每条测试用例执行结果及测试步骤。


图7 vTESTstudio自动化测试脚本界面及测试报告

测试结果验证(点击查看视频)

案例分享| T-Box功能自动化测试方案-T-Box测试过程视频

【北汇信息】教你如何在T-Box测试时解放双手

总结

本方案充分利用安卓系统的控制交互指令,在实车测试环境下,对T-Box与手机端交互功能的自动化测试方案进行了前期验证分析。

对于完整的自动化测试系统除上述工具外,还需结合Vector 的VT System I/O板卡、电源等相关设备,组成完整的T-Box HiL测试平台。

北汇信息可提供T-Box从底层无线射频信号层面测试、中间层协议测试到上层应用功能全覆盖的测试解决方案,包括在线测试和离线测试,欢迎感兴趣的小伙伴与我们联系。后续我们将陆续分享其它相关测试技术干货,敬请关注!

参考文献

[1] GBT 32960.2-2016 电动汽车远程服务与管理系统技术规范 第2部分:车载终端[2] 基于CMW500的车联网系统自定义场景测试.pdf[3] 车辆T_BOX系统安全测试和评价.pdf[4] 面向车联网系统的车载T_BOX的设计.caj

作者:北汇信息-张闯,吴佳

----------------------------------------------------------------------------------------------------------------------


喜欢此篇文章的话欢迎一键三联支持小编吧~!

案例分享| T-Box功能自动化测试方案相关推荐

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

    1. 背景 智能座舱是当前汽车行业开发设计和差异化竞争的焦点,当前智能座舱控制器多为整合了传统IPK.HMI.HUD.DMS等若干控制器之后的"一机多屏"的复杂系统.在软件架构上, ...

  2. python写appium_案例分享,Python +appium做登录功能

    原标题:案例分享,Python +appium做登录功能 Appium 是一个自动化测试开源工具,支持 iOS 平台和 Android 平台上的原生应用,同时又是一个跨平台的工具:它允许测试人员在不同 ...

  3. 老李分享:基于图像识别的跨平台的手机自动化测试方案

    老李分享:基于图像识别的跨平台的手机自动化测试方案 poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工作为目标.如果对课程感兴趣,请大家咨询q ...

  4. RS瑞森半导体LLC恒流方案RSC6105S的案例分享

    一.前言 瑞森半导体LLC系列恒流方案在LED驱动电源应用设计案例分享,本篇案例是RSC6105S在30W-42W功率段,应用在教育照明与办公照明的电源方案,内容包括:原理图.PCB.BOM.变压器参 ...

  5. Sahi案例分享:音乐批量下载

    from http://www.infoq.com/cn/articles/sahi-google-music-download 作者沈锐发布于2012年6月13日 领域 运维 & 基础架构, ...

  6. Web UI 自动化测试方案(超级干货)

    项目讨论 项目中符合自动化测试的部分有哪些?(目标和范围 scope, 准入准出标准) 稳定的需求点.变动较少的页面 每日构建后的测试验证 daily build 比较频繁的回归测试 需要在多平台上运 ...

  7. 提升的控件 paint()事件被遮挡_设计锦囊 | 提升产品易用性案例分享

    提升产品易用性 案例分享 Design Tips 设计锦囊: 产品无言,细节有声,项目管理部不定期为大家分享产品设计中的优秀案例及解读,从微小之处学习产品的设计之道,通过学习沉淀将知识其转为工作所用, ...

  8. Android Native crash 处理案例分享

    简介:Android Native crash 处理案例分享 1. 背景 目前 mPaas[1] Android使用Crash SDK对闪退进行的处理,CrashSDK 是 Android 平台上一款 ...

  9. python写ui自动化测试用例_自动化测试(6) | Web UI 自动化测试方案

    Web项目的 UI 自动化测试方案 有用的链接: 项目讨论 项目中符合自动化测试的部分有哪些?(目标和范围 scope, 准入准出标准) 稳定的需求点.变动较少的页面 每日构建后的测试验证 daily ...

最新文章

  1. 你究竟了解多少HTML代码
  2. mysql timestamp json_mysql中timestamp,datetime,int类型的区别与优劣
  3. Web后门工具WeBaCoo
  4. MySQL的大分页查询该如何优化?
  5. cmd中的进度如何捕捉到输出内容_python 中日志异步发送到远程服务器
  6. Python之路(第三十九篇)管道、进程间数据共享Manager
  7. python图像开闭区间_自动开闭器不良故障案例分析
  8. 基于Android平台的简易人脸检测库
  9. java中的jni_JAVA中JNI的简单使用
  10. Spring @Aspect、@Before、@After 注解实现 AOP 切面功能
  11. 快二游戏数据分析_1.更快的数据分析
  12. 适合C语言学习的书籍推荐 | 初学者必备
  13. 使用vue3+vite+cesium,在地图上显示图标,并且点击实体弹出消息框
  14. python打分系统_做一个Python颜值打分系统,比比看杨幂和杨超越到底谁更美?
  15. c语言数组五种排序法:bubble,choise,quick,insert,shell 和js 数组排序sort的区别
  16. cocos2d-x android 直接加载下载到sd的zip里的资源文件(一)
  17. ictclas怎么配置java_ICTCLAS2015 Java版本的使用方法
  18. pb 选择多行数据窗口数据_PB数据窗口中自动换行
  19. 2019年-2020年计划
  20. 熬夜慢性自杀全过程曝光 | 程序员入坑必读

热门文章

  1. 大数据治理入门系列:数据血缘关系
  2. 关于S7-1200博途软件上载失败原因汇总。如:软件型号不一致,项目名称已使用导致上载失败
  3. 学历、长相、家境普通的人,未来的发展方向是什么?00后的职业规划都已经整得明明白白......
  4. 计算机联锁是用计算机取代,《计算机联锁》练习册答案
  5. android整机测试用例,Android_TestCase(测试用例)
  6. 如何固定背景不随滚动条滚动?
  7. JM8.6编解码器中trace_enc.txt和trace_dec.txt文件的功能
  8. 基于halcon与c#联合的视觉处理软件
  9. Matlab画常见信号函数一
  10. 四级真题图表作文计算机,英语四级图表作文的类型及其参考范文 - 英语四级考试网...