一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于场景的车载信息娱乐系统实车自动化测试方法与流程

2021-10-29 23:21:00 来源:中国专利 TAG:自动化 测试 电子产品 场景 方法


1.本发明属于实车电子产品自动化测试技术领域,具体为一种基于场景的车载信息娱乐系统实车自动化测试方法。


背景技术:

2.随着科技的发展和社会进步,实车的科技含量越来越高,智能化水平也越来越高,尤其是搭载了丰富交互形式(hmi: human machine interface)的车载信息娱乐系统(ivi: in

vehicle infotainment)的智能实车。驾驶员可以通过大尺寸触摸屏、语音、手势、按键等操作行为与车载信息娱乐系统完成多形式的交互沟通,极大地提升了乘车人员的用户车体验。与此同时,也为实车整车厂试验认证团队、车载信息娱乐系统供应商等带来一系列的开发和测试相关的课题。其中尤为突出的一点就是在产品交付周期短缩、测试工作量增加的现状下,如何提高车载信息娱乐系统的测试效率降低成本,这是行业内都需要直面的课题。
3.具体地,在车载信息娱乐系统上实车测试的场景下,目前主要采取的形式还是人工测试,且至少需要含驾驶员在内的两名测试人员参与。触摸屏式的车载信息娱乐系统有别于传统硬按键式的系统,在驾驶过程中需要操作车载信息娱乐系统时,一方面需要将视线关注到屏幕上才可进行操作,即使可以通过语音交互的形式操作车载信息娱乐系统,但是测试用例规模较大,都就会导致驾驶员注意力分散,影响驾乘安全;另一方面实车测试需要事前计划好行车路线,设定好在各场景下的测试用例,但是在实车过程中,受到道路状况等外部因素影响及驾乘人员主观因素影响,很大程度上干扰了测试人员实施测试,测试效率上大打折扣,也有可能影响到测试的准确性、可靠性。


技术实现要素:

4.针对现有技术中存在的问题,本发明提供了一种基于场景的车载信息娱乐系统实车自动化测试方法,通过改进测试过程,有效的降低了测试本身对驾驶安全的影响,提高实车测试的安全性。
5.本发明提供的技术方案为:一种基于场景的车载信息娱乐系统实车自动化测试方法,通过客户端

服务器端的架构实现,其特征在于,包括以下步骤:s1:在服务器端程序中:根据各项测试任务预设的场景安排测试用例,编写自动化测试脚本;根据场景要求规划实车测试的行走路线和路线节点,所述路线节点即实车拟经过的路径地点的标识位置,利用地图服务技术,将所述路线节点的位置参数导入自动化测试脚本中;s2:在计算机上安装客户端程序,利用客户端程序接收所述服务器端程序分发的测试任务,下载并执行与所述测试任务对应的自动化测试脚本;
执行所述自动化测试脚本的过程包括:实时获取实车当前的位置参数,与各个标识位置结合,进行两点间的距离计算,当实车与某个标识位置的距离满足预设条件后,即认为已经匹配上了该标识位置,则按照预设的场景,执行与该场景对应的测试用例;所述与该场景对应的测试用例包括模拟触摸屏操作、模拟语音发声操作、模拟方向盘按键操作中的一种或多种;所述模拟触摸屏操作为:客户端程序与车载信息娱乐系统建立通信,向被测试的车载信息娱乐系统发送多点触摸事件操作指令和截图指令,在完成操控模拟以及接收到被测试车载信息娱乐系统发送的屏幕截图图像后,与预设的基准图像进行对比,以确认被测试车载信息娱乐系统的屏幕画面是否是在按照测试脚本中定义的预期基准画面动作中;所述模拟语音发声操作为:客户端程序通过tts语音引擎解析测试用例的语音文本,用音响设备向外发声,代替驾乘人员完成对被测试车载信息娱乐系统发出语音指令,并通过麦克风采集车内音频信号,生成对应的音频文件,将所述音频文件与测试脚本中定义的预期基准语音文件进行声纹对比,确认被测试车载信息娱乐系统的声音交互是否准确;模拟方向盘按键操作为:通过设有数模信号转换器的测试装置连接计算机与被测试的车载系统娱乐系统,将客户端程序控制输出的数字信号转换为电压信号,输出到被测试的车载系统娱乐系统,以模拟实车方向盘按键信号的输入;客户端程序连接被测试的车载信息娱乐系统,在完成模拟实车方向盘按键信号输入的同时,向被测试的车载信息娱乐系统发送截图指令,接收到被测试车载信息娱乐系统发来的屏幕截图图像后,与预设的基准图像进行对比,以确认被测试的车载信息娱乐系统的屏幕画面是否是在按照测试脚本中定义的预期基准画面动作中。
6.在上述方案的基础上,进一步改进或优选的方案还包括:进一步的,所述模拟语音发声操作中,通过麦克风采集的车内音频信号来源于车载信息娱乐系统响应语音指令反馈的语音和/或驾乘人员描述测试结果的反馈语音。
7.进一步的,所述模拟语音发声操作还包括:客户端程序与被测试车载信息娱乐系统建立通信连接,向被测试的车载信息娱乐系统发送截图指令,在采集车内音频信号的同时,接收到被测试车载信息娱乐系统发来的屏幕截图图像,并与预设的基准图像进行对比,以确认被测试的车载信息娱乐系统的屏幕画面是否是在按照测试脚本中定义的预期基准画面动作中。
8.进一步的,在所述模拟触摸屏操作中,客户端程序与车载信息娱乐系统建立通信的过程为:安装在计算机上的客户端程序通过android调试桥连接到被测试的车载信息娱乐系统,通过adb shell命令行执行getprop命令以获取被测试车载信息娱乐系统的操作系统属性,根据操作系统的属性,将基于安卓设备远程管理框架stf编写的支持截图、多点触摸事件操作及socket通信功能的可执行程序,通过adb shell命令行执行push命令推送到被测试的车载信息娱乐系统上并执行,使计算机上的客户端程序与车载信息娱乐系统实现socket通信。
9.进一步的,在所述模拟方向盘按键操作中,与安装在计算机上的客户端通过串口连接的测试装置,采用了带eeprom存储器的12位四通道数模转换器mcp4728,将四路数字信
号转换成电压输出到被测试的车载系统娱乐系统,以模拟实车方向盘按键信号的输入。
10.作为优选,所述测试装置设有车规级gps模块skg12q,通过串口及接口程序将实时定位数据转发给所述客户端程序。
11.进一步的,服务器端程序实时接收客户端程序发送的测试状态数据,依据所述测试状态数据判断当前的测试状态是否满足预定的场景设定要求,并基于判断结果选择性的向客户端推送提示信息。所述测试状态数据包括测试用例的执行状态,客户端程序的操作状态,gps数据的获取状态,以及计算机与测试装置、被测试车载信息娱乐系统的连接状态。
12.有益效果:在本发明中,测试人员可以在实验室完成所有车载信息娱乐系统实车测试的自动化测试脚本的制作,实车测试时按照场景自动执行测试脚本即可,大幅提高实车测试的效率。且在所述测试脚本的执行过程中,相较于现有技术,极大的降低了驾乘人员的观察和记录工作,实车测试时,只需一名驾乘人员根据客户端程序的提示信息完成相应操作即可,测试用例的执行和结果确认主要由客户端程序完成,且驾乘人员可以更加专注于驾驶,有效避免受到道路状况等外部因素影响及驾乘人员主观因素影响,导致的测试准确性、可靠性问题。同时,在更优选的技术方案中,通过服务器端程序对实车测试过程的实时把握和测试过程修正,也可进一步的提高实车测试的准确性、可靠性。
13.整体上,本发明测试方法可减少手工操作,改善现有技术在实车测试时浪费资源的不足,降低实车测试成本,提高了测试的可靠性及驾驶安全性。
附图说明
14.图1为执行本发明方法的测试系统架构图;图2为本发明方法中服务器端、客户端的子模块图;图3为本发明方法的工作流程图。
具体实施方式
15.为了阐明本发明方法的技术方案和工作原理,下面结合附图与具体实施例对本发明做详细的说明。
16.如图1、图2所示,本发明方法所对应的测试系统主要包括客户端和服务器端两部分。所述客户端包括基于场景在实车上自动执行、结果确认测试用例的客户端程序及测试装置,所述服务器端设有可远程实时监控、分发任务、修正测试过程的服务器端程序。
17.所述服务器端程序安装在实验室的远程控制平台设备中,主要由测试状态监控模块、测试任务管理模块、测试用例管理模块、测试策略管理模块、策略执行偏差监控模块、测试报告收集模块、http多线程通信模块、mq通信模块等模块组成。
18.所述客户端程序安装在可移动的终端设备中,如计算机,在实车测试时,方便和测试装置一起搭载在安装了待测车载信息娱乐系统的实车上。所述客户端程序包括http通信模块、mq通信模块、测试脚本解析模块、串口通信模块、tts发生模块、位置侦测模块、socket通信模块、声纹采集对比模块等。所述测试装置包括电源控制模块、串口通信模块、数模转换模块和gps通信模块等。
19.本实施例基于场景的车载信息娱乐系统实车自动化测试方法,过程如下:
s1:在远程控制平台布置服务器端程序s11.实车测试前,在所述服务器端程序中:1)根据各项测试任务预设的场景安排测试用例,制定测试策略,编写自动化测试脚本;2)根据场景要求规划好实车测试的行走路线和路线节点,并利用地图服务技术,将各路线节点的位置参数导入自动化测试脚本中,作为途径地点的标识位置;3)确认各实车客户端正确连接后,分发测试任务和行走路线、途径地点的数据到相应的实车客户端程序中;s12.实车测试途中:通过服务器端程序实时监控客户端上传的实车实时数据,包括但不限于测试装置连接状态、测试用例执行状态、客户端操作状态、被测试对象连接状态、gps数据获取状态等,并通过业务算法或人工结合以上状态,利用音响设备等对实车测试过程进行修正或操作提示,比如:偏离测试场景设置的路线提示、熄火停车后测试开合电动车门的操作提示、观察空调车窗开合状态的操作提示、观察空调是否被调节至指定温度的操作提示、按照提示操作点火装置等;通过服务器端程序实时接收和备份客户端上传的自动化测试结果文件。
20.s2:利用安装在计算机上的客户端程序接收所述服务器端程序分发的测试任务,下载并执行与所述测试任务对应的自动化测试脚本;执行所述自动化测试脚本的过程包括:实时获取实车当前的位置参数,与各个标识位置结合,进行两点间的距离计算,当实车与某个标识位置的距离满足预设条件后,比如接近程度达到预设的范围值以内,即认为已经匹配上了该途径地点,则按照预设的场景,执行自动化测试脚本中与该场景对应的测试用例;所述与该场景对应的测试用例包括模拟触摸屏操作、模拟语音发声操作、模拟方向盘按键操作中的一种或多种,其中:a.模拟触摸屏操作本实施例以基于android的车载信息娱乐系统为例,客户端程序与车载信息娱乐系统建立通信连接的过程为:安装在计算机上的客户端程序通过android调试桥(adb: android debug bridge)连接到被测试的车载信息娱乐系统,通过adb shell命令行执行getprop命令以获取被测试车载信息娱乐系统的操作系统属性,包括cpu信息以及系统版本等。在明确了操作系统属性后,根据操作系统的属性,将基于安卓设备远程管理框架stf (smartphone test farm)编写的支持截图、多点触摸事件操作及socket通信功能的可执行程序,通过adb shell命令行执行push命令推送到被测试的车载信息娱乐系统上并执行。
21.上述可执行程序被执行后,计算机上的客户端程序即可与车载信息娱乐系统实现socket通信,按照所述自动化测试脚本中定义的测试用例的执行步骤,向被测试的车载信息娱乐系统发送多点触摸事件操作、截图等指令,从而完成对被测试的车载信息娱乐系统的操控模拟,以及在接收到被测试车载信息娱乐系统发来的屏幕截图图像后,与预设的基准图像进行对比,以确认被测试车载信息娱乐系统的屏幕画面是否是在按照测试脚本中定
义的预期基准画面动作中。
22.通过上述技术方案可实现对车载信息娱乐系统触屏操作相关的自动测试及自动结果确认的目的。
23.b.模拟语音发声操作安装在计算机上的客户端程序通过tts(text to speech)语音引擎解析测试用例的语音文本,用音响设备向外发声,代替驾乘人员对被测试车载信息娱乐系统发出语音指令。被测试的车载信息娱乐系统在接收到所述tts语音后,可被唤醒并响应各种语音指令,完成相关操作或调节。客户端程序还通过麦克风采集车内的音频信号,生成对应的音频文件,之后将所述音频文件与测试脚本中定义的预期基准语音文件进行声纹对比,确认被测试车载信息娱乐系统的声音交互是否准确。通过麦克风采集的车内音频信号可来源于车载信息娱乐系统响应语音指令反馈的语音和驾乘人员描述测试结果的反馈语音。
24.与此同时,客户端程序也可与被测试车载信息娱乐系统建立通信连接,向被测试的车载信息娱乐系统发送截图指令,在采集车内音频信号的同时,接收到被测试车载信息娱乐系统发来的屏幕截图图像,并与预设的基准图像进行对比,以确认被测试的车载信息娱乐系统的屏幕画面是否是在按照测试脚本中定义的预期基准画面动作中。
25.c.模拟方向盘按键操作通过设有数模信号转换器的测试装置连接计算机与被测试的车载系统娱乐系统。所述测试装置通过串口与计算机内的服务端程序连接,采用了带eeprom存储器的12位四通道数模转换器mcp4728,可将四路数字信号转换成电压输出到被测试的车载系统娱乐系统。测试装置可使用外部电压基准vdd,输出0.000v至vdd范围的电压值,测试人员事前确认好实车方向盘各个按键的阻值,通过欧姆定律即可算出某个按键的分压值。设计服务端程序提供参数设置接口,以适配不同车型的按键信号模拟,实测时只需根据算出的分压值进行参数设置,即可模拟输出相应电压值到被测试的车载系统娱乐系统,完成对方向盘按键的模拟操作,比如:声音模式切换、静音、声音增大、声音减小、上一页、下一页等按键操作。
26.与此同时,客户端程序连接被测试的车载信息娱乐系统,在进行模拟实车方向盘按键信号输入时,向被测试的车载信息娱乐系统发送截图指令,接收到被测试车载信息娱乐系统发来的屏幕截图图像后,与预设的基准图像进行对比,以确认被测试的车载信息娱乐系统的屏幕画面是否是在按照测试脚本中定义的预期基准画面动作中。
27.通过此技术方案可代替驾乘人员完成方向盘按键操作,实现对车载信息娱乐系统中方向盘按键相关交互功能的自动化测试,有效减少实车测试驾驶人员的工作负荷。
28.上述的b和c操作中,服务端程序与车载信息娱乐系统建立通信的方法可参考a模拟触摸屏操作的通信方法。
29.同时,所述测试装置内还安装车规级gps模块skg12q,通过串口及接口程序将经度高的实时定位数据(经度和维度)转发给所述客户端程序,完成对途径地点的匹配,触发测试任务的自动执行。
30.图3为本发明测试方法的流程图,其中实车测试的操作过程具体包括以下步骤:步骤1:驾乘人员将安装了客户端程序的计算机与待测车载信息娱乐系统通过usb线束物理连接,通过执行客户端程序中的adb命令与车载信息娱乐系统建立通信关系;步骤2:客户端程序自动通过adb shell命令行执行getprop命令以获取被测试对
象的操作系统属性,包括cpu信息以及系统版本;步骤3:客户端程序根据步骤2获得的操作系统属性,将基于stf框架开发的具备画面截图、多点触摸事件操作及socket通信功能的可执行程序p,通过adb shell push命令推送到被测试的车载信息娱乐系统上,修改其权限并执行;步骤4:所述客户端程序开放端口后,与步骤3中描述的程序p建立socket通信,即可实时获取被测试的车载信息娱乐系统图像,并可通过adb shell input命令,向车载信息娱乐系统发送模拟触摸屏的操作指令,以操控被测试对象并截取实时图像画面回传到客户端与预设的基准图像进行测试对比确认;步骤5:客户端程序通过tts语音引擎,解析服务器端分发的测试用例的自动化测试脚本,并通过外接音响对外发声,被测试的车载信息娱乐系统在接收到该语音指令后,可被唤醒并响应完成语音指示的操作,比如:导航、播放音乐、开关空调、升降车窗等操作或调节。关于结果确认,车身操作相关的测试用例,驾乘人员可将观察到的现场通过带有关键字的语音描述,记录下来并实时传输到服务器端保存待查,比如:“异常!车窗没有按照语音提示打开”,其中“异常”为实车测试反馈的关键字,在服务期间存储记录中,可查询并反映到测试结果中;车载信息娱乐系统画面相关的测试用例,可通过步骤4中描述的方法自动确认;车载信息娱乐系统语音交互相关的测试用例,客户端程序通过麦克风录制下车载信息娱乐系统反馈的语音的音频文件,通过声纹对比的方式,与预期的音频文件进行对比确认。
31.步骤6:客户端程序通过rs

232串行通信接口与测试装置连接。实车测试前,根据实车方向盘按键的阻值,通过欧姆定律计算出其实际要输出的电压值,再将阻值设置到测试装置对应的接口中,以实现测试装置模拟输出与方向盘物理按键同等的电压值。实车测试时,客户端程序解析模拟方向盘按键相关的测试脚本,通过串行通信接口将模拟输出的指令逐条发送给测试装置;相应地测试装置模拟电压值,经由物理线束,输出电压值到被测试的车载信息娱乐系统,以模拟方向盘按键操作相关自动测试。
32.步骤7:所述客户端程序通过rs

232串行通信接口与测试装置连接。实车测试前,服务器端程序向客户端程序下发测试任务及途径地点的标识位置经度和纬度信息。实车测试时,测试装置将从gps模块实时获取的gps数据经由rs

232串行通信接口,发送给所述客户端程序。所述客户端程序将实时gps数据与各个途径地点的标识位置经度、纬度结合进行两点间距离计算,当该距离满足一定条件后,即可认为已经匹配上了某个途径地点的标识位置,并按照事先预设好的场景,在该指定的途径地点执行指定的测试用例即可。基于gps经纬度的两点距离计算原理为:在wgs84坐标系下,计算两点相对于球芯的夹角,再根据地球赤道半径计算一个截面圆的弧长,此弧长即为两点间距离。该原理在诸多公开的技术材料中都有记述,本文不再赘述。
33.步骤8:客户端程序按照自动化测试脚本中的各项结果判断的用例,将判断结果保存并生成测试报表传输到服务器端。
34.以上仅是本发明的优选实施方式,本发明的保护范围并不仅局限于上述实施例,凡属于本发明思路下的技术方案均属于本发明的保护范围。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理前提下的若干改进和润饰,应视为本发明的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜