整车控制器自动化测试方法及系统与流程

专利2022-06-29  69


本发明涉及车辆测试技术领域,特别涉及一种整车控制器自动化测试方法及系统。



背景技术:

随着人们的环境保护意识的逐渐提升,包括纯电动汽车和混合动力汽车的新能源汽车的目的是降低排放,其被认为是当前节能和减排的有效路径之一。整车控制器(vehiclecontrolunit,vcu)通过采集电动汽车加速踏板、挡位、制动踏板等信号来判断驾驶员的驾驶意图,监测车辆状态(车速、温度等)信息并作出判断处理后,向动力系统或动力电池系统发送车辆的运行状态控制指令,同时控制车载电力系统的工作模式。整车控制器是电动汽车的核心部件,对电动汽车的安全、稳定、可靠运行起着至关重要的作用。

目前对电动汽车整车控制器的系统测试往往依赖于人工测试,其需要测试人员首先针对每个测试用例都对整车控制器的系统变量进行人工手动输入,从而完成测试过程中系统对输入变量的需要;然后测试人员对可视化输出结果进行人工读取判断,从而完成一个系统功能的测试。

但是,本申请的发明人在实践本申请的过程中发现,现有技术的基于人工手动测试的技术方案存在以下的弊端:首先,手工测试周期过程长;整个测试过程全部需要手工进行动作操作、变量修改、结果比对,使得过多时间浪费在变量的手动修改以及其他手动操作过程,从而导致测试周期过长,一个全功能系统测试需要花费几天时间。并且,测试出错率高,整个测试需要人为干预完成,人为操作可能出现测试条件遗漏、以及测试结果查看错误等情况。其次,测试用例文件根据系统提供需求进行提取,需要对系统所有输入条件进行覆盖,从而完成多条件、多工况、多任务的系统测试,测试用例目前为人工描述编写而成,为非机器可识别文本格式,使得在测试过程中,需要测试人员对用例内容进行解读,然后根据解读内容进行手工操作,进而完成测试过程;因此,导致了用户需要对用例的内容和格式有所了解才能够完成自动化测试,使得测试方案的应用受到限制。



技术实现要素:

有鉴于此,本发明旨在提出一种整车控制器自动化测试方法,以至少解决现有技术中人工测试的操作复杂、易遗漏项、出错率高,以及在测试中需要专业测试工程师解读测试用例内容并实施测试操作所导致的测试应用受限的问题。

为达到上述目的,本发明的技术方案是这样实现的:

一种整车控制器自动化测试方法,所述整车控制器自动化测试方法包括:获取自动化测试请求;基于所述自动化测试请求查询属性用例关联表,以确定与所述自动化测试请求相对应的目标用例属性模块,其中所述属性用例关联表包括多个用例属性模块,且每一用例属性模块分别指向不同的测试用例;基于所确定的目标用例属性模块调用所指向的目标测试用例,并执行自动化测试。

进一步的,所述获取自动化测试请求包括:从所述测试用例关联表中读取由用户所设置的测试请求信息,其中所述测试请求信息包括针对用例属性模块的选择信息;基于所述测试请求信息,生成对应的所述自动化测试请求。

进一步的,所述选择信息还包括调用次数信息,其中所述基于所确定的目标用例属性模块调用所指向的目标测试用例,并执行自动化测试包括:对所确定的目标测试用例执行对应于所述调用次数信息的自动化测试。

进一步的,所述选择信息还包括测试开始值、测试结束值和测试步长值,其中所述基于所确定的目标用例属性模块调用所指向的目标测试用例,并执行自动化测试包括:根据所述测试开始值和所述测试结束值,解析拆分所选择的用例属性模块;根据所拆分的用例属性模块和所述测试步长值,生成连续测试序列;基于所述连续测试序列,执行连续自动化测试。

进一步的,在基于所述自动化测试请求查询属性用例关联表之前,该方法还包括创建所述属性用例关联表,其中所述创建所述属性用例关联表包括:获取多个测试用例;分别读取所述多个测试用例的测试用例属性信息,并聚合所读取的测试用例属性信息以生成指向所读取的测试用例的用例属性模块;根据所生成的用例属性模块,创建所述属性用例关联表。

进一步的,所述分别读取所述多个测试用例的测试用例属性信息包括:将所述多个测试用例转换为对应的标准用例输入文本格式;从所述标准用例输入文本格式的所述多个测试用例中读取测试用例属性信息。

进一步的,所述从所述标准用例输入文本格式的所述多个测试用例中读取测试用例属性信息包括:基于python生成器读取所述测试用例属性信息,以自动识别所读取的测试用例属性信息的数据格式。

进一步的,所述根据所述用例属性模块,创建所述属性用例关联表包括:将所述属性用例关联表中每一列的测试用例属性信息按照字典格式进行存储。

进一步的,所述属性用例关联表中还包括对应于各个用例属性模块的期望测试数据,其中在基于所确定的目标用例属性模块调用所指向的目标测试用例,并执行自动化测试之后,该方法还包括:当生成自动化测试数据时,将所述自动化测试数据与和所述目标用例属性模块所对应的期望测试数据进行对比,以得出自动化测试结果;将所述自动化测试结果存储至所述属性用例关联表,以供用户查阅。

相对于现有技术,本发明所述的整车控制器自动化测试方法具有以下优势:

本发明所述的整车控制器自动化测试方法,通过响应于对属性用例关联表进行查询的自动化测试请求,找出表中所请求的目标用例属性模块,并基于表中用例属性模块与测试用例之间的指向关系调用测试用例,从而执行自动化测试操作。由此,不需要专业的测试工程师理解专业难懂的测试用例代码,只需要通过发出针对用例属性模块的查表请求,就能够通过用例属性模块调用所指向的测试用例,且自动化程度很高地完成测试操作,扩展了自动化测试的应用范围,还降低了测试成本。

本发明的另一目的在于提出一种整车控制器自动化测试系统,以至少解决现有技术中人工测试的操作复杂、易遗漏项、出错率高,以及在测试中需要专业测试工程师解读测试用例内容并实施测试操作所导致的测试应用受限的问题。

为达到上述目的,本发明的技术方案是这样实现的:

一种整车控制器自动化测试系统,所述整车控制器自动化测试系统包括:请求获取单元,用于获取自动化测试请求;关联表查询单元,用于基于所述自动化测试请求查询属性用例关联表,以确定与所述自动化测试请求相对应的目标用例属性模块,其中所述属性用例关联表包括多个用例属性模块,且每一用例属性模块分别指向不同的测试用例;自动化测试单元,用于基于所确定的目标用例属性模块调用所指向的测试用例,并执行自动化测试。

所述整车控制器自动化测试系统与上述整车控制器自动化测试方法相对于现有技术所具有的优势相同,在此不再赘述。

本发明的其它特征和优点将在随后的具体实施方式部分予以详细说明。

附图说明

构成本发明的一部分的附图用来提供对本发明的进一步理解,本发明的示意性实施方式及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1为本发明实施例的整车控制器自动化测试方法的流程图;

图2为图1所示的整车控制器自动化测试方法中的s11的具体执行的流程原理图;

图3为本发明实施例的整车控制器自动化测试方法中自动创建属性用例关联表的流程原理图;

图4为本发明一实施例的属性用例关联表的示例;

图5为本发明另一实施例的整车控制器自动化测试方法的流程图;

图6为应用本发明一实施例的整车控制器自动化测试方法的系统架构示意图;

图7为本发明一实施例的整车控制器自动化测试方法的工作原理示例;

图8为本发明一实施例的整车控制器自动化测试方法中读取维护文档的流程示例;

图9为本发明一实施例的整车控制器自动化测试方法中实现自动测试并读取实测结果的流程示例;

图10为由本发明一实施例的整车控制器自动化测试方法所输出的测试报告的示例;

图11为本发明实施例的整车控制器自动化测试系统的结构框图。

附图标记说明:

801请求获取单元802关联表查询单元

803自动化测试单元

80整车控制器自动化测试系统

具体实施方式

需要说明的是,在不冲突的情况下,本发明中的实施方式及实施方式中的特征可以相互组合。

另外,在本发明的实施方式中所提到的用例属性模块,是指对应于同一测试用例的属性信息的集合,以及测试用例属性信息可以是表示测试用例的各种描述性信息,例如其可以是包括测试用例编号、测试步骤、延迟时间和调用设置值。

下面将参考附图并结合实施方式来详细说明本发明。

如图1所示,本发明一实施例的整车控制器自动化测试方法,包括:

s11、获取自动化测试请求。

关于本发明实施例方法的执行主体,一方面,其可以是通过专用于执行整车控制器自动化测试的设备或仪器来实现的;另一方面,其还可以是通过在通用型终端或设备上配置了用于实现本发明实施例方法的自动化测试方法的自动化测试单元或自动化测试模块,例如可以是在自动化测试单元或自动化测试模块上配置了相应的用于测试的代码。作为示例,其可以是基于应用于硬件在环测试系统(hil,hardwareintheloop)中的代码、单元或模块所实现的。

关于自动化测试请求的获取方式,其可以是基于用户对例如自动化测试设备的操作所实现的;需说明的是,在本发明实施例中并不要求请求执行自动化测试的人员是专业的需要懂测试用例的编程语言的人员,并且其可以是完全不需要了解专业的测试用例编程语言,就能够实现自动化测试操作。其中,该测试请求是针对特定的一个或多个测试用例的,以请求对这些测试用例执行自动化测试。

s12、基于自动化测试请求查询属性用例关联表,以确定与自动化测试请求相对应的目标用例属性模块,其中属性用例关联表包括多个用例属性模块,且每一用例属性模块分别指向不同的测试用例。

本实施例中的属性用例关联表只需要将其中的属性模块与测试用例进行指向关联,从而实现对测试用例的调用,因此该属性用例关联表能够适用于各种类型的测试用例。

s13、基于所确定的目标用例属性模块调用所指向的目标测试用例,并执行自动化测试。

在本实施例中,通过预配置的属性用例关联表,将用例属性模块与测试用例之间进行指向关联,使得能够通过响应针对查表类型请求的自动化测试请求找到对应的用例属性模块,并进而实现对所指向的目标测试用例的调用,有效实现了对测试用例的自动化测试过程。由此,将目前繁琐的人工操作测试过程升级为自动化测试(例如基于软件程序的自动化测试),从而摆脱测试过程中的人为干预,从而提高测试过程的准确性和主观性,使测试结果更加可行,需求最终实现全覆盖。

需说明的是,如上所描述的,由于用例属性模块是指对应于同一测试用例的属性信息的集合,其所表达的都是用户所容易理解的内容;因此,关于查表的自动化测试请求也可以是用户基于描述性信息的理解而作出的,使得执行自动化测试任务的用户甚至都不需要理解测试用例的含义,其只需要通过对属性用例关联表的操作便可以实现对特定测试用例进行调用,甚至都不需要专业测试工程师接入操作,提高了自动化测试的应用范围,并降低了测试成本。

在一些实施方式中,其还可以是通过对所指向的目标测试用例进行测试条件(例如and关系或者or关系)组合,进而能够衍生出多组不同测试条件的测试用例,自动实现测试用例重组,由此自动实现了对需求具有测试条件组合的测试用例进行测试,并满足了一些个性化测试场景的测试需求,提高了用户的测试体验。

更优选的,用户还可以是通过对同一张表格的操作来实现发出自动化测试请求,例如先在表格中设置好测试请求信息,然后在执行自动化测试时,通过对表格的读取能够获取自动化测试请求。如图2所示出的s11的具体执行流程的示例,包括:

s111、从测试用例关联表中读取由用户所设置的测试请求信息,其中测试请求信息包括针对用例属性模块的选择信息。

s112、基于测试请求信息,生成对应的所述自动化测试请求。

更具体的,其还可以是在测试用例关联表的预定义的位置设置测试请求信息,由此使得在自动化测试操作开始的时候就能够通过读取该预定义位置的测试请求信息,从而生成自动化测试请求。

在一些优选实施方式中,选择信息还包括调用次数信息,由此使得能够根据调用次数信息来确定调用执行测试用例的次数,在执行自动化测试时能够对所确定的目标测试用例执行对应于调用次数信息的自动化测试。其中,当调用次数信息大于1次时,可以是一次输入请求而实现对所确定的目标测试用例执行循环自动化测试,而不需要重复繁杂的多次输入,提高了用户测试体验。

在一些实施方式中,还可以是实现仅对测试用例中的部分步骤进行试验,不需要对整个测试用例进行调用和执行,提高了测试效率。具体的,可以是在选择信息中设置测试开始值、测试结束值和测试步长值,由此在执行自动化测试时,可以是根据测试开始值和测试结束值,解析拆分所选择的用例属性模块,然后根据所拆分的用例属性模块和测试步长值,生成连续测试序列,并基于连续测试序列执行连续自动化测试。作为示例,当设置输入测试编号为a,开始值为50,结束值为100,步长为10时,可以自动得出对应于5个步骤的50-100的连续测试序列,进而完成用例下选定步骤区间的连续自动化测试,且不需要多次输入,避免了因用户多次输入设置所导致的偏差。

关于本发明实施例中的属性用例关联表的构建方式,其一方面,可以是通过人为来构造在用例属性模块与对应的测试用例之间的关系,从而实现对用例属性模块的构建;另一方面,其还可以是通过自动化创建的方式所实现的,如图3所示的自动创建属性用例关联表的流程,具体包括:

s31、获取多个测试用例。

其中,所获取的多个测试用例可以是涵盖未来测试中所可能涉及的所有的测试用例。

s32、分别读取多个测试用例的测试用例属性信息,并聚合所读取的测试用例属性信息以生成指向所读取的测试用例的用例属性模块。

s33、根据所生成的用例属性模块,创建属性用例关联表。

在一些实施方式中,可能需要保证测试用例属性信息是来自于同一数据格式的,才能够保障所聚合的用例属性模块的可靠性。因此,可以是在输入测试用例时,测试用例就应当满足统一的文本格式,例如都可以是excel文本格式的;优选的,在读取用例属性信息时,可以是将多个测试用例转换为对应的标准用例输入文本格式(例如excel文本格式),并从标准用例输入文本格式的多个测试用例中读取测试用例属性信息。

在一些实施方式中,其可以是基于python生成器读取所述测试用例属性信息,以自动识别测试用例属性信息的数据格式,例如空值、非空值、特殊字符串等,由此实现对数据的快速读取,占用内存小。另外,python生成器读信息的工作流程不仅适用于表创建阶段,其也同样适用于在响应请求而执行测试的阶段,且能够取得数据的快速读取的效果。

如图4所示,本发明一实施例的属性用例关联表的示例,其中,每一列的数据都是以字典(dictionary)的格式进行存储的,例如可以是以列位置为key,以每一列的值为value进行存储的。

在一些优选实施方式中,我们希望自动化测试的过程中能够直接得到测试结果,而不仅仅是测试数据。如图5所示,本发明一实施例的整车控制器自动化测试方法,包括:

s51、获取自动化测试请求。

s52、基于自动化测试请求查询属性用例关联表,以确定与自动化测试请求相对应的目标用例属性模块,其中属性用例关联表包括多个用例属性模块,且每一用例属性模块分别指向不同的测试用例。

s53、基于所确定的目标用例属性模块调用所指向的目标测试用例,并执行自动化测试。

关于s51-s53的具体实施细节和效果,其可以是参照上文相关实施例的描述,故在此便不赘述。进一步地,为了直观地获得测试结果,其可以是通过实施如下的操作来实现的。

s54、当生成自动化测试数据时,将自动化测试数据与和目标用例属性模块所对应的期望测试数据进行对比,以得出自动化测试结果,其中属性用例关联表中包括对应于各个用例属性模块的期望测试数据。

s55、将自动化测试结果存储至属性用例关联表,以供用户实时查阅。

在本实施例中,可以是直接将自动化测试结果存储在属性用例关联表中,能够直观地让用户查阅测试用例的测试结果。因此,本发明实施例可以实现在每完成一个测试用例的测试结果之后,可以是实时地生成结果并供用户实时查阅,而不必要等到所有的测试用例都完成测试了之后用户才能查阅,方便用户及时了解测试情况,允许用户快速采取应对措施,提高了整车控制器的自动化测试体验。

在本实施例中,通过提供一种标准格式测试用例输入文本,可满足不同类型测试用例的要求。可以自动读取测试用例文件,并对测试文本中相应参数名称和值以数据字典格式存储,测试过程循环调用通用的测试脚本单元,完成用例的自动化测试操作者可以不需要了解编程语言,不需要编写测试脚本,只需要维护测试用例文本即可完成自动化测试,能够完成系统测试高度自动化。另外,通过本发明实施例的实施可以实现诸多效果,例如:其一,可最大程度的缩短测试周期,从而实现时间和人力成本的最优化,从而节省产品开发费用,缩短产品开发周期。其二,可以对测试结果进行实时观测判断,对过程中持续时间较短的信号进行捕获读取,避免对数据的后处理分析,相比之下,解决了现有技术中由于个别测试用例需要对过程中测试结果进行查看,但是由于有些观测信号只会持续几十毫秒,甚至是几毫秒,肉眼是观察不到过程跳变现象,这样导致测试结果需要进行后处理分析,从而增加了人力及其他资源成本;其三,操作者无需了解编程开发语言,只要了解测试需求,对测试文档进行输入,即可完成测试过程,可实现不同工种联合操作。

如图6所示,本发明一实施例的整车控制器自动化测试系统的架构,可以是基于原有hil及inca标定软件的测试环境,增加测试软件平台,采用python编程语言计算法对测试过程进行编程实现,最终达到vcu测试自动化。具体的,其可以包括三个测试单元:测试数据读取单元、测试单元和数据结果保存单元,其维护简单并可以在测试用例配置文件中配置用例测试重复次数,实现重复性测试;配置文件同样可以对测试用例进行选择性配置,如果不需要测试则可以进行禁止测试配置,这样做的优点是实现了点检测试。其中,测试单元采用接口函数,无需进行去重操作,不用担心在一个测试用例中重复输入某个变量。

如图7所示,本发明实施例的整车控制器自动化测试系统的工作原理示例,其可以是在测试文档中增加测试标示符,达到可对测试用例筛选执行。其中主要包括对excel的输入文件的定义和自动化测试软件开发。

以下将以本发明实施例方法应用在集成自动化测试软件程序代码的机器可读存储介质上的示例,其具体包括以下方面:

一方面,基于excel的输入文件定义可以是通过提供一种标准格式测试用例输入文本,自动化测试用例的输入部分为.xls或者.xlsx文本文件,该标准文本涵盖不同测试需求的要求,操作者可以直观的对测试需求的输入输出部分进行定义以及任务维护,可读性强,本实施例可自动对测试文本关键字部分进行识别,从而调用相应的功能函数,完成预期操作。示例性的,具体标准模板可以是参照如图4所示的表格。首先,测试前需要对测试用例文档进行维护,包括:编号、测试描述、测试次数、是否测试、测试步骤、延迟时间、设置值和预期值。测试步骤和预期值为主要需要维护的部分,测试步骤中需要对init、step(设置值和预期值)进行维护。工程师需要根据需求对测试文档进行输入,确保测试条件和测试结果正确。

另一方面,自动化测试软件开发可以是读取维护文档(作为输入),自动读取实测结果,自动解析测试步骤、自动评价测试结果,自动生成测试报告。

本发明实施例的整车控制器自动化测试方法包括:

1)读取维护文档

本测试软件可以自动识别批量测试用例文件,如测试脚本文件为*.xls,不同的测试人员可以把各自的测试用例放入指定的文件夹中,软件会自动完成所有的测试用例执行,避免测试人员进行独自测试。该项由软件读取维护文档输入数据,软件会读取“编号”、“测试描述”、“测试步骤”、“时间”、“设置值”、“预期值”,并把每一列以字典(dictionary)格式存储,以列位置为key键,以每一列的值为value,并以python生成器(yield)的方式进行数据读取,软件会自动识别数据格式(空值、非空值、特殊格式字符串),这种方式相对于数据数组存储读取的方式的优点是数据读取迅速,占用内存小。本软件可自动识别字典中的关键字,从而执行不同的流程操作。

在如图8所示的测试流程中,所有的测试用例共用一个通用测试脚本单元,避免了每个测试用例需要写自己的测试脚本,维护起来更加简单。同时本软件提供开放函数接口,操作者可编写自己私有函数,从而方便不同测试需求的嵌入,也方便了软件的升级。测试过程中本软件从数据字典中解析测试变量名称及测试变量值进行数据输入及结果比对。测试试步骤进行测试及判断结果。

2)自动测试并读取实测结果

如图9所示,本自动化测试软件可自动读取hil模型中硬线及整车can报文数据也可以读取inca中模型内部标定量数据,

优选的,还可以是对测试条件自动生成组合测试,使得测试人员只需要把一组结果为真值的条件和预期结果写入测试文本,从而自动实现多组测试用例重组生成,衍生出多组不同测试条件的测试用例;例如,某条测试用例真值条件需要同时满足与关系(and关系)(测试变量1=trueand测试变量2=trueand测试变量3=trueand测试变量4=trueand…测试变量n=true)n个条件同时满足时testresult=true,测试人员只需在测试配置文件把此组真值条件(测试变量1=trueand测试变量2=trueand测试变量3=trueand测试变量4=trueand……)和结果(测试结果=true)输入,测试软件可自动排列组合成多组测试用例,包括:所有条件都满足、一个条件不满足、两个条件不满足……n个条件不满足测试用例,总共n! 1(n的阶乘 1)个测试用例;同样,某条测试用例真值条件需要同时满足或关系(or关系)(测试变量1=trueor测试变量2=trueor测试变量3=trueor测试变量4=trueor……测试变量n=true)n个条件,其中任意一条条件满足时测试结果=true,测试人员只需在测试配置文件把此组真值条件(测试变量1=trueor测试变量2=trueor测试变量3=trueor测试变量4=trueor……测试变量n=true)和结果(测试结果=true)输入,测试软件可自动排列组合成多组测试用例,包括:所有条件都不满足、一个条件满足、两个条件满足……n个条件满足测试用例,总共n! 1(n的阶乘 1)个测试用例。同样也可完成与或(and、or)混和关系测试用例。

3)自动解析测试步骤

根据输入开始值、结束值、步长值以及测试时间,例如设置输入变量值varible_a,开始值为0,结束值为100,步长为10,本自动化测试软件可以自动解析为11组测试step,自动对测试用例进行解析拆分,完成连续序列的测试执行,避免进行多组数据输入。

4)自动实时评价测试结果和自动生成测试报告

在本实施例中,可以实时生成测试结果,可实时查看已经测试完成的测试用例,并不用等待整个测试文件完全执行后查看结果。

自动评价测试结果:自动测试软件根据每一组测试输入计算的预期结果和读取测试结果进行比较,如果和预期值或范围一致则认为测试合格,否则测试失败。

自动生成测试报告:自动测试软件会将每一个标定量的所有输入的测试评价形成数组,然后将评价结果返回到维护文档形成测试报告,这个过程也是自动完成的,完成的测试报告形式如图10所示。本自动化测试软件可以实现对所有测试结果进行合格率统计,自动标注不合格用例结果不合格处。

通过本发明实施例,能够实现高程度的自动化测试效果、成本低、完善测试流程,节省测试时间和人力成本,测试人员无需有编程基础,只需要维护测试文本部分即可。另外,完成vcu手动测试到自动测试的升级,补充sil和hil测试的不足,简化测试用例编写方式,通过维护一个表格的方式就能实现从测试执行到报告生成的整个过程。

如图11所示,本发明一实施例的整车控制器自动化测试系统80,包括:请求获取单元801,用于获取自动化测试请求;关联表查询单元802,用于基于所述自动化测试请求查询属性用例关联表,以确定与所述自动化测试请求相对应的目标用例属性模块,其中所述属性用例关联表包括多个用例属性模块,且每一用例属性模块分别指向不同的测试用例;自动化测试单元803,用于基于所确定的目标用例属性模块调用所指向的目标测试用例,并执行自动化测试。

关于本发明实施例系统更多的细节可以参照上文关于本发明实施例方法的描述,并能够取得与上文本发明实施例方法相同或相应的技术效果,故在此便不再赘述。

以上所述仅为本发明的较佳实施方式而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。


技术特征:

1.一种整车控制器自动化测试方法,其特征在于,所述整车控制器自动化测试方法包括:

获取自动化测试请求;

基于所述自动化测试请求查询属性用例关联表,以确定与所述自动化测试请求相对应的目标用例属性模块,其中所述属性用例关联表包括多个用例属性模块,且每一用例属性模块分别指向不同的测试用例;

基于所确定的目标用例属性模块调用所指向的目标测试用例,并执行自动化测试。

2.根据权利要求1所述的整车控制器自动化测试方法,其特征在于,所述获取自动化测试请求包括:

从所述测试用例关联表中读取由用户所设置的测试请求信息,其中所述测试请求信息包括针对用例属性模块的选择信息;

基于所述测试请求信息,生成对应的所述自动化测试请求。

3.根据权利要求2所述的整车控制器自动化测试方法,其特征在于,所述选择信息还包括调用次数信息,其中所述基于所确定的目标用例属性模块调用所指向的目标测试用例,并执行自动化测试包括:

对所确定的目标测试用例执行对应于所述调用次数信息的自动化测试。

4.根据权利要求2所述的整车控制器自动化测试方法,其特征在于,所述选择信息还包括测试开始值、测试结束值和测试步长值,其中所述基于所确定的目标用例属性模块调用所指向的目标测试用例,并执行自动化测试包括:

根据所述测试开始值和所述测试结束值,解析拆分所选择的用例属性模块;

根据所拆分的用例属性模块和所述测试步长值,生成连续测试序列;

基于所述连续测试序列,执行连续自动化测试。

5.根据权利要求1所述的整车控制器自动化测试方法,其特征在于,在基于所述自动化测试请求查询属性用例关联表之前,该方法还包括创建所述属性用例关联表,其中所述创建所述属性用例关联表包括:

获取多个测试用例;

分别读取所述多个测试用例的测试用例属性信息,并聚合所读取的测试用例属性信息以生成指向所读取的测试用例的用例属性模块;

根据所生成的用例属性模块,创建所述属性用例关联表。

6.根据权利要求5所述的整车控制器自动化测试方法,其特征在于,所述分别读取所述多个测试用例的测试用例属性信息包括:

将所述多个测试用例转换为对应的标准用例输入文本格式;

从所述标准用例输入文本格式的所述多个测试用例中读取测试用例属性信息。

7.根据权利要求6所述的整车控制器自动化测试方法,其特征在于,所述从所述标准用例输入文本格式的所述多个测试用例中读取测试用例属性信息包括:

基于python生成器读取所述测试用例属性信息,以自动识别所读取的测试用例属性信息的数据格式。

8.根据权利要求5所述的整车控制器自动化测试方法,其特征在于,所述根据所述用例属性模块,创建所述属性用例关联表包括:

将所述属性用例关联表中每一列的测试用例属性信息按照字典格式进行存储。

9.根据权利要求1所述的整车控制器自动化测试方法,其特征在于,所述属性用例关联表中还包括对应于各个用例属性模块的期望测试数据,其中在基于所确定的目标用例属性模块调用所指向的目标测试用例,并执行自动化测试之后,该方法还包括:

当生成自动化测试数据时,将所述自动化测试数据与和所述目标用例属性模块所对应的期望测试数据进行对比,以得出自动化测试结果;

将所述自动化测试结果存储至所述属性用例关联表,以供用户查阅。

10.一种整车控制器自动化测试系统,其特征在于,所述整车控制器自动化测试系统包括:

请求获取单元,用于获取自动化测试请求;

关联表查询单元,用于基于所述自动化测试请求查询属性用例关联表,以确定与所述自动化测试请求相对应的目标用例属性模块,其中所述属性用例关联表包括多个用例属性模块,且每一用例属性模块分别指向不同的测试用例;

自动化测试单元,用于基于所确定的目标用例属性模块调用所指向的目标测试用例,并执行自动化测试。

技术总结
本发明涉及车辆测试领域,提供一种整车控制器自动化测试方法及系统,其中所述整车控制器自动化测试方法包括获取自动化测试请求;基于所述自动化测试请求查询属性用例关联表,以确定与所述自动化测试请求相对应的目标用例属性模块,其中所述属性用例关联表包括多个用例属性模块,且每一用例属性模块分别指向不同的测试用例;基于所确定的目标用例属性模块调用所指向的目标测试用例,并执行自动化测试。由此,实现了自动化测试以替代人工手动测试,并且不需要专业的测试工程师理解专业难懂的测试用例代码,只需要通过发出针对用例属性模块的查表请求,且自动化程度很高地完成测试操作,提高了自动化测试的应用范围,还降低了测试成本。

技术研发人员:郭延岭;董晗;李雷
受保护的技术使用者:长城汽车股份有限公司
技术研发日:2018.11.30
技术公布日:2020.06.09

转载请注明原文地址: https://bbs.8miu.com/read-32275.html

最新回复(0)