掌桥专利:专业的专利平台
掌桥专利
首页

一种软件远程升级验证测试装置和方法

文献发布时间:2023-06-19 11:08:20


一种软件远程升级验证测试装置和方法

技术领域

本发明属于汽车软件技术,具体涉及汽车软件远程升级的验证测试技术。

背景技术

OTA是指即空中下载技术,通过移动通信的接口实现对软件进行远程管理,OTA是汽车软件升级的通道,其价值是将新软件远程刷写到汽车中。为了保证OTA系统具备安全、稳定、便捷的升级能力,开发阶段要进行大量的压力测试,因此,需要一种自动化的测试方法,对远程升级整个过程进行压力测试,替代测试人员,完成升级功能的稳定性验证。

中国专利文献CN 103064715 A公开了一种自动路测系统远程升级方法及系统,其是一款测试软件,而不是基于用户正常升级流程进行测试,对升级过程和测试结果也没有记录。

对于一种自动化的测试技术,远程升级测试需要覆盖整个过程,包括下载、安装阶段以及各个阶段的状态,并且在低概率升级失败后能够记录错误信息,以便开发人员分析问题。测试完成后自动统计测试结果和生成测试报告,减少人为操作的失误和人力的消耗。

现有技术还没有比较好的方法能有效地解决以上问题。

发明内容

本发明的目的是提供一种软件远程升级验证测试方法和装置,其针对汽车软件升级需要,可进行远程升级的自动化测试,完成压力测试和稳定性验证,减少人为操作的失误和人力的消耗。

本发明的技术方案如下:

本发明提供一种软件远程升级验证测试装置,包括:升级测试代理模块和升级测试服务模块。

A、升级测试代理模块:其被配置为提供升级宿主程序引用,在升级宿主程序中增加测试所需的探测点,并将升级信息反馈到升级测试服务模块,提供升级宿主测试的接口规范,建立升级宿主和升级测试服务模块之间交互的通道。

B、升级测试服务模块:被配置为提供升级测试的功能,包括测试配置界面子模块、测试过程监控子模块、测试数据管理子模块。

具体地,所述测试设置界面子模块:被配置为供开发和测试人员配置测试参数,包括升级次数、测试中止策略等;升级测试报告参数:包括报告存放路径,报告是否传回云端,报告格式等;设置升级参数:根据升级对外提供的设置项,可配置自动下载等。

所述测试过程监控子模块:被配置为根据升级测试代理模块传回的升级信息,执行测试步骤、判断测试的结果。

所述测试数据管理子模块:被配置为对测试过程中的信息数据进行保存,并按照设置的升级测试报告参数,生成测试报告。

本发明还提供一种软件远程升级验证测试的方法,其采用上述的远程升级验证测试的装置时限,其方法包括以下步骤:

步骤1、准备测试验证装置:宿主设备中安装升级测试服务模块程序;负责远程升级功能的升级宿主程序引入升级测试代理并做接口适配;升级宿主程序按照升级测试代理要求的接口规范,输出指定格式的信息,同时处理输入的请求。

步骤2、云端远程升级管理服务发布升级任务,要求升级任务中的目标版本高于升级包的实际版本号,可以不断下发升级任务。

步骤3、通过升级宿主设备中的升级测试服务在升级测试配置界面中,设置测试参数、升级参数、测试报告参数、并启动测试。

步骤4,监控测试过程:通过升级测试服务判断测试的状态,如果正在测试过程中,打开升级测试代理接收输入,通过升级测试代理传入的数据,分析升级的过程和状态,保存升级信息数据,判断升级的结果,并根据测试流程在适当的时间点,通过升级测试代理向升级宿主程序输出请求。

步骤5,生成测试报告:将升级过程中保存升级信息数据和升级结果,按照设置的报告格式生成测试报告。

进一步地,所述步骤1中,升级测试代理接口规范要求升级宿主程序输出的指定格式信息包括:查询到升级任务输出云端下发升级原始信息、升级宿主程序待处理的升级任务队列信息;升级包下载过程输出下载的开始、中止、完成、出错状态信息;升级提示时输出提示状态信息;升级包分发过程中输出升级包分发的开始、中断、完成、出错状态信息;安装过程输出每个安装包的开始、完成、异常状态信息;升级任务完成输出升级的状态和结果信息。

升级测试代理接口规范要求升级宿主处理的输入请求包括:开始/停止下载、自动安装,改变升级参数。

进一步地,所述步骤4中,升级测试服务收到升级测试代理传入的数据,并执行测试步骤。具体包括:

当收到有升级任务输入时,将云端的升级信息和待处理的升级任务进行对比,判断升级任务解析是否正确。

当收到下载状态时,记录下载时长,下载中止或者出错的原因。

当收到升级提示状态时,判断升级宿主设备和车辆状态是否满足提示要求并记录,同时,向升级代理输出自动安装请求。

当收到分发和安装过程状态,记录条件是否满足要求、每个安装包分发和安装的时长、结果、异常的原因。

当收到本次升级任务完成时,判断升级结果,累加测试次数,决定是否需要重启升级宿主设备。

在本方法中,升级测试服务收到升级测试代理输入时,均要记录检测点的时间,判断升级测试是否进行,如果测试结束或者测试条件不满足,按照测试配置参数生成测试报告,并上传到云端。

通过实施以上技术方案,本发明可以产生以下有益效果:

(1)本发明为汽车软件的远程升级提供一种轻量级的自动化测试植入方法,在升级宿主升级流程不做修改情况下,只需按照升级测试代理提供的接口规范做适配,在正常升级过程中完成测试。

(2)本发明为汽车软件的远程升级提供自动化测试工具,减少压力测试工作所需的人力成本,缩短开发测试周期,提高远程升级的开发测试效率。

(3)本发明在一定程序上能够为OTA系统的稳定升级能力验证提供方法和测试结论。

附图说明

以下附图是用来提供对本发明实施例的进一步理解,并且构成说明书的一部分,与下面的具体实施方式一起用于解释本发明实施例,但并不构成对本发明实施例的限制。在附图中:

图1为本发明的系统框架图;

图2为本发明的方法步骤图;

图3为本发明的处理流程图;

图中:1、升级宿主程序,2、升级测试代理,3、升级测试服务

21 准备测试验证装备, 22 云端发布升级任务, 23设置测试参数, 24监控测试过程, 25 测试报告输出。

具体实施方式

下面结合附图对本发明作进一步说明。

本发明的一个实施例提供如图1所示的升级测试装置2的系统框架,该升级测试装置2提供了升级测试代理模块,升级宿主1引入升级测试代理,按照升级测试代理中要求的接口规范完成适配,通过升级测试代理建立升级宿主和升级测试服务之间的双向通道。

具体地,升级测试代理模块被配置为提供升级宿主程序引用,在升级宿主程序中增加测试所需的探测点,并将升级信息反馈到升级测试服务模块,提供升级宿主测试的接口规范,建立升级宿主和升级测试服务模块之间交互的通道。

升级测试服务模块内部有升级设置界面子模块、升级过程监控子模块、升级数据管理子模块这三个子模块,实现远程升级测试验证。

具体地,测试设置界面子模块被配置为提供开发和测试人员配置测试参数,这些参数包括:升级次数、测试中止策略;升级测试报告参数:包括报告存放路径,报告是否传回云端,报告格式;设置升级参数:根据升级对外提供的设置项,配置自动下载。

测试过程监控子模块被配置为根据升级测试代理模块传回的升级信息,执行测试步骤、判断测试结果。

测试数据管理子模块被配置为对测试过程中的信息数据进行保存,并按照设置的升级测试报告参数,生成测试报告。

如图2所示,本发明的另一个实施例提供利用以上升级测试装置,实现软件远程升级测试验证的方法,包含以下5个步骤:

21、测试装置准备:宿主设备中安装升级测试服务模块程序;升级宿主程序引入升级测试代理并做接口适配;升级宿主程序按照升级测试代理要求的接口规范,输出指定格式的信息,同时处理输入的请求。

22云端发布升级任务,根据云端升级任务发布规则,对测试车辆持续下测试任务。

23设置测试参数,在升级测试装置打开升级设置界面,设置测试参数,包括升级次数、升级中止策略等;升级测试报告参数,包括报告存放路径,报告是否传回云端,报告格式等,设置升级参数,根据升级对外提供的设置项,可配置自动下载等。

24监控测试过程,启动测试后,通过升级测试代理传入的数据,分析升级的过程和状态,保存升级信息数据,判断升级的结果,并在适当的时间点,向升级测试代理输出请求。

25 生成测试报告,将升级过程中保存升级信息数据和升级结果,按照设置的报告格式生成测试报告。根据设置要求,测试报告存放在指定路径,并上传指定的服务器地址。测试报告包括每次远程升级的对象、安装包信息、时间、地点、网络情况、下载的时长、速率、出错的原因、升级提醒的时间、宿主设备和车辆的状态、单个安装包分发和安装的时长和结果、出错原因等信息,升级次数,升级成功率。

如图3所示,本发明进一步的实施例展现了升级测试升级验证装置中升级测试服务的测试实施流程,包括以下步骤:

301,启动测试后,升级测试服务通知升级测试代理打开测试通道,等待升级宿主输入。

302,判断测试条件是否满足,若满足,进入304;

303,如果测试已经完成或者测试所需的关键条件不满足,则停止测试,关闭测试通道,并继续生成未完成的测试报告。

其中,测试所需的关键条件包括网络可用、升级对象关键部件正常连接,相同原因的测试失败次数未达到中止限定值。

304,当收到升级任务输入时,记录任务信息。

305,将云端的升级任务信息和待处理的升级任务进行对比,判断升级任务解析是否正确,若正确,进入306,如果升级任务不一致,记录失败结束本次测试。

306,向升级测试代理输出“开始下载”请求。

308,当收到升级测试代理输入的下载状态时,记录下载信息,包括下载时间、下载中止或者出错的原因。

309,在下载过程中,如果因为网络断开导致下载中止,则转至307。

307,尝试重新打开网络后,如果网络打开成功转至306,重新向升级测试代理输出“开始下载”请求。当3次打开网络失败、或者是服务器异常导致的失败,记录原因结束本次测试。转至315。

310,当收到升级测试代理输入的升级提示状态时,记录提示信息。

311,判断升级宿主设备和车辆状态是否满足提示条件并记录,如果满足提示条件,转至312,否则测试失败结束本次测试,转至315。

312,向升级测试代理输出自动安装请求。

313,当收到安装过程状态输入时,记录安装信息,包括:安装前的条件、每个安装包分发和安装的时长、结果,如果出现异常,记录安装异常原因,并继续等待接收升级状态。这里,是否有安装包分发状态的输入根据升级对象升级方式而定。

如果接收安装状态输入过程中,等待下一状态超时,需要记录升级宿主的运行状态,并结束本次测试,转至315。

315,如果出现异常或者超时,判断是否是在安装过程产生的。

314,根据输入安装状态或者产生的异常判断升级结果,结束此次安装。

316,当收到本次升级完成、测试过程超时或升级异常时,判断和记录升级测试结果,累加测试次数。

317,如果是测试次数达到或者不满足测试所需的关键条件,则停止测试,关闭升级测试代理通道,并生成测试报告。

318,每次测试完成,需要重启升级宿主设备,开始下一次升级测试。

319,如果宿主升级流程没有重启的处理,则升级测试服务在等待重启超时后,重启升级宿主设备。

以上结合附图详细描述了本发明实施例的可选实施方式,但是,本发明实施例并不限于上述实施方式中的具体细节,在本发明实施例的技术构思范围内,可以对本发明实施例的技术方案进行多种简单变型,这些简单变型均属于本发明实施例的保护范围。

相关技术
  • 一种软件远程升级验证测试装置和方法
  • 一种电池管理系统软件的远程升级系统及远程升级方法
技术分类

06120112811083