测试序列组建方法和装置以及自动化测试方法和系统与流程

文档序号:18939943发布日期:2019-10-23 01:04阅读:301来源:国知局
测试序列组建方法和装置以及自动化测试方法和系统与流程

本发明涉及仿真测试技术领域,特别涉及一种测试序列组建方法和装置,以及自动化测试方法和系统。



背景技术:

在仿真测试技术领域中,需要根据功能需求设计测试用例,再根据测试用例搭建自动化测试序列并设置参数,之后执行相应的测试流程。对于多个测试项目来说,其中可能存在多个项目具有相同功能需求的状况,而对于每个测试项目而言,又需要各自独立的搭建各自的自动化测试序列,因此,即使存在相同功能需求,多个测试项目之间也无法借用搭建于其他测试项目中的已有测试序列,因此,在多个测试项目之间存在着重复相同内容的测试序列搭建过程。

例如,目前常用的基于ni(nationalinstruments,美国国家仪器有限公司)硬件在环的自动化测试序列设计是先根据功能需求设计测试用例,然后在ni自动化测试工具上建立测试变量,编写自动化测试序列,最后,在自动化测试工具上运行自动化测试序列。不同的整车软件测试项目有可能有相同的软件功能需求(如根据国标测试的直流电、交流电等功能),对于相同功能需求的测试序列,每次都需要重新建立变量,重新搭建测试序列,这种针对相同功能需求的测试序列的重复性的建立变量和搭建测试序列的工作,整体上降低了测试效率,延长了项目周期。



技术实现要素:

本发明的目的是提供一种测试序列组建方法和装置、以及自动化测试方法和系统,将不同项目的相同需求功能的相关测试序列封装为用例测试平台供多个项目使用,进而不必针对不同项目的相同功能重新建立变量和搭建测试序列,以实现节约测试时间,提高测试效率,缩短项目周期的目的。

本发明的技术方案如下:

一种测试序列组建方法,包括:

根据测试用例搭建测试序列;

将所搭建的所述测试序列封装为用例测试平台;

将所述用例测试平台接入所需要的自动化测试项目中。

可选地,所述自动化测试为硬件在环仿真测试,所述测试用例为硬件在环仿真测试的测试用例。

可选地,在所述的根据测试用例搭建测试序列之前,所述测试序列组建方法还包括:

从多个自动化测试项目中筛选出可供其中至少一个自动化测试项目所使用的所述测试用例。

可选地,在将所述用例测试平台接入所需要的自动化测试项目中之后,所述测试序列组建方法还包括:

根据接入所述用例测试平台的自动化测试项目,对所述用例测试平台与所接入的自动化测试项目之间的接入参数进行设置。

可选地,所述接入参数包括:

硬件接口、数据传输的报文信息、模型参数、板卡参数、dbc文件。

一种测试序列组建装置,包括:

序列搭建模块,用于根据测试用例搭建测试序列;

平台封装模块,用于将所述序列搭建模块所搭建的所述测试序列封装为用例测试平台;和

平台接入模块,用于将所述平台封装模块所封装的用例测试平台接入至所需要的自动化测试项目中。

可选地,所述测试序列组建装置还包括:

用例筛选模块,用于从多个自动化测试项目中筛选出可供其中至少一个自动化测试项目所使用的所述测试用例。

可选地,所述测试序列组建装置还包括:

参数设置模块,用于根据接入所述用例测试平台的自动化测试项目,对所述用例测试平台的接入参数进行设置。

一种自动化测试方法,包括:

执行如上任一项所述的测试序列组建方法;和

执行所述自动化测试项目的测试流程。

一种自动化测试系统,包括:

如上任一项所述的测试序列组建装置;和

自动化测试模块,用于执行所述自动化测试项目的测试流程。

从上述方案可以看出,本发明的测试序列组建方法和装置、以及自动化测试方法和系统,通过将不同自动化测试项目中的功能相同的测试序列封装为用例测试平台,进而,在每次自动化测试项目执行之前,无需再重新逐条建立变量、重新搭建测试序列,只需对应于所需要的自动化测试项目将用例测试平台的接入参数进行相应修改即可接入所需要的自动化测试项目中使用,从而节省了重新逐条建立变量、重新搭建测试序列的时间,提高了测试效率,缩短项目周期。

附图说明

以下附图仅对本发明做示意性说明和解释,并不限定本发明的范围。

图1为本发明实施例的测试序列组建方法流程示意图;

图2为本发明实施例的测试序列组建装置结构框图。

具体实施方式

为了对发明的技术特征、目的和效果有更加清楚的理解,现对照附图说明本发明的具体实施方式,在各图中相同的标号表示相同的部分。

在本文中,“示意性”表示“充当实例、例子或说明”,不应将在本文中被描述为“示意性”的任何图示、实施方式解释为一种更优选的或更具优点的技术方案。

为使图面简洁,各图中的只示意性地表示出了与本发明相关部分,而并不代表其作为产品的实际结构。另外,以使图面简洁便于理解,在有些图中具有相同结构或功能的部件,仅示意性地绘示了其中的一个,或仅标出了其中的一个。

在本文中,“上”、“下”、“前”、“后”、“左”、“右”等仅用于表示相关部分之间的相对位置关系,而非限定这些相关部分的绝对位置。

如图1所示,本发明实施例的测试序列组建方法,主要包括以下步骤:

步骤2、根据测试用例搭建测试序列;

步骤3、将所搭建的测试序列封装为用例测试平台;

步骤4、将用例测试平台接入所需要的自动化测试项目中。

本发明实施例的测试序列组建方法主要应用于硬件在环仿真测试。硬件在环(hil,hardware-in-the-loop)是计算机专业术语,也即硬件在回路。硬件在环是利用一个实时运行的仿真物理模型模拟受控对象的运行状态,利用接口板卡的输入输出能力,对控制器的输出进行控制信号的截取,再将信号输入到仿真模型中产生相应的反应行为,再将反应行为转化为输出信号输出到控制器的输入管脚,使得整体的系统得到一个闭环的响应。通过使用硬件在环,可以显著降低开发时间和成本。在没有使用硬件在环之前,开发电气机械元件或系统时,计算机仿真手段和实际的实验手段彼此相互独立,而通过使用硬件在环,使得这两个过程结合起来使得研发效率得到极大的提升。

硬件在环仿真测试是指,以实时处理器运行仿真模型来模拟受控对象的运行状态,通过i/o接口与被测的控制器,如ecu(electroniccontrolunit,电子控制单元)连接,对被测控制器进行全方面的、系统的测试。从安全性、可行性和合理的成本上考虑,硬件在环仿真测试已经成为ecu开发流程中非常重要的一环,减少了实车路试的次数,缩短开发时间和降低成本的同时提高ecu的软件质量,降低汽车厂的风险。在新能源汽车领域中,硬件在环仿真测试对于整车控制系统、bms电池管理系统、mcu电机控制器均具有非常重要的作用。

在本发明实施例中,自动化测试为硬件在环仿真测试,测试用例为硬件在环仿真测试的测试用例。

在本发明实施例中,测试用例是指硬件在环仿真测试中,为控制器某个功能而编制的一组输入、测试步骤及预期结果,以便测试控制器的某个功能或核实控制器是否满足功能需求。

在本发明实施例中,测试序列是指硬件在环仿真测试中,依据测试用例使用自动化测试工具编写的一系列测试步骤的组合。

继续参见图1所示,在可选实施例中,在步骤2的根据测试用例搭建测试序列之前,本发明实施例的测试序列组建方法还进一步包括:

步骤1、从多个自动化测试项目中筛选出可供其中至少一个自动化测试项目所使用的测试用例。

在可选实施例中,在步骤4的将用例测试平台接入所需要的自动化测试项目中之后,本发明实施例的测试序列组建方法还进一步包括:

步骤5、根据接入用例测试平台的自动化测试项目,对用例测试平台与所接入的自动化测试项目之间的接入参数进行设置。

从上述可选实施例可以看出,本发明中,封装为用例测试平台的测试序列是可以供多个自动化测试项目所使用的。例如,在新能源汽车的研发过程中,直流充电的测试用例会涉及到多个自动化测试项目中,即有多个不同的自动化测试项目会包含直流充电的测试用例,同时,直流充电本身又是以国家标准为基础进行测试的,因此,不同项目的直流充电的测试用例均是相同的(其中包含了如充电电流、充电电压等直流充电的测试用例内部的参数在不同项目中均采用国家标准执行测试)。这样,便可以在步骤1从多个自动化测试项目中筛选出直流充电这一可供多个自动化测试项目所使用的测试用例。当然,除了直流充电以外,还有多种供多个自动化测试项目所使用的其它的测试用例。

同样以直流充电为例,对于上述多个不同的自动化测试项目需要的直流充电的测试用例来说,均采用国家标准执行测试。因此,该直流充电的测试用例所采用的测试序列,即直流充电的测试序列无论是在哪一个自动化测试项目中,其组成结构、执行顺序以及诸如充电电流、充电电压等直流充电本身的内部参数均相同。因此,在步骤2中,根据直流充电的测试用例所搭建的直流充电的测试序列,可以不经修改地用来在多个不同的自动化测试项目中使用。

对于不同的自动化测试项目来说,在传统方法中,如果都需要执行相同测试用例,则需要在每一个自动化测试项目中,均对相同的测试序列进行搭建,这从多个自动化测试项目的整体来说,分别在每一个自动化测试项目中搭建具有相同组成结构、执行顺序和内部参数的测试序列无疑增加了重复性工作,造成了效率低下的问题。

在本申请实施例中,通过步骤3,将所搭建的测试序列封装为用例测试平台。通过这种方式,将用例测试平台作为一个独立的对象进行保存,在任何需要执行测试用例的自动化测试项目中,均可以接入该用例测试品台,而不必如传统方式那样进行重复性的测试序列的搭建工作,显然将极大地提高测试效率,解决了由于重复性搭建测试序列导致的效率低下的问题。

在本申请实施例中,步骤3中是将整个对应于一个测试用例的测试序列整体封装为用例测试平台。而传统方式中,最多只是针对测试用例中的测试序列下面的某些步骤进行封装组成测试序列,这种方式仍然无法解决由于重复性搭建测试序列导致的效率低下的问题。例如,对于直流充电的测试用例来说,其包括低压上电、充电握手、参数配置、充电、充电完成几个步骤,而这些步骤各自均包括了多个测试序列,传统方式中,最多只针对如低压上电、充电握手、参数配置、充电、充完成中的某些测试序列进行封包,而并非是将包含低压上电、充电握手、参数配置、充电、充电完成的所有步骤中的所有序列完全进行封装构成直流充电用例测试平台来使用。显然其效率远低于本发明实施例的测试序列组建方法。

与传统方式相比,本发明实施例的测试序列组建方法的不同点在于,传统方式的所考虑的出发点是复用程度高的操作,而本发明实施例中所考虑的出发点是测试用例。这就构成了本发明实施例与传统方式的根本不同,传统方式中,复用程度高的操作中,某个复用程度高的操作可以用于多个测试用例中,这是一种一对多的关系,而本发明实施例中,一个用例测试平台只对应于一个测试用例,这是一种一对一的关系。另一个角度来说,本发明实施例是从自动化测试项目整体考虑,在组成自动化测试项目的各个测试用例的层面入手,来筛选可供多个自动化测试项目使用的测试用例;而传统方式只是从动作执行角度考虑,最多是将复用程度较高的操作进行封装,这种传统方式缺乏对自动化测试项目整体的构思,不利于研发测试中的对自动化测试项目整体结构的改进创造,具有很大的局限性。而本发明实施例中,由于是从自动化测试项目整体考虑,在组成自动化测试项目的各个测试用例的层面入手,来筛选可供多个自动化测试项目使用的测试用例,这样,在提高测试效率,解决由于重复性搭建测试序列导致的效率低下的问题的基础上,也辅助了研发测试人员能够从更高的角度俯视整个自动化测试项目,从而有利于研发测试中对自动化测试项目的整体结构的改进创造。

在本发明实施例中,接入参数是指,用例测试平台与外部所接入对象之间的参数,例如测试用例所针对的控制器的硬件接口、数据传输的报文信息、模型参数、板卡参数、dbc文件等。其中模型参数是用来测试控制器所使用的自动化测试软件的模型参数,板卡参数是用来测试控制器所使用的硬件平台的硬件参数,dbc文件是指汽车can通信的dbc文件。在可选实施例中,用例测试平台自身内部还存在内部参数,这些内部参数在可选实施例中是封装在用例测试平台中,之后这些内部参数便可不必再修改。以直流充电测试用例为例,直流充电本身是以国家标准为基础进行测试,所以不同项目的直流充电的测试用例均是相同的(其中包含了如充电电流、充电电压等直流充电的测试用例内部的参数在不同项目中均采用国家标准执行测试),亦即不同项目的直流充电用例测试平台中的充电电流、充电电压这些内部参数在所有的测试项目中均不需要进行修改。可见,本发明实施例中,在用例测试平台封装完毕后,只需要在接入自动化测试项目时仅针对接入参数进行设置即可,不需要再对内部参数进行重复设置,节省了设置时间,进一步提高了测试效率。

以下再次以直流充电为例,将本发明实施例的测试序列组建方法说明如下。

首先,通过整理筛选出不同项目中具体有相同功能的测试用例,其中包含了直流充电测试用例。因为所有项目的直流充电均以国标为基础进行测试,因此不同项目的直流充电测试用例均相同。除直流充电外,还具有其他相同功能的若干测试用例,在进行整理时,可将包含直流充电测试用例在内的所有在不同项目中具有相同功能的测试用例汇总于表格中,之后可按照表格中的条目顺序对其中的各个测试用例进行相应的用例测试平台的建立。

之后,在进行直流充电测试用例的用例测试平台的建立时,可使用自动化测试工具,按照直流充电测试用例描述的初始条件、测试步骤、期望结果、复位条件进行直流充电测试序列的搭建。

在直流充电测试序列搭建完成后,将直流充电测试序列封装为直流充电用例测试平台,并将直流充电用例测试平台设置为通用。可通过自动化测试工具中library实现直流充电用例测试平台的封装。用例测试平台可以直接使用或作为子序列进行调用。

之后,可针对不同的自动化测试项目,修改直流充电用例测试平台的接入参数。在未使用用例测试平台前,每次进行不同的自动化测试项目的测试前需重新建立相应的变量(内部参数),修改内部参数后重新搭建测试序列。使用用例测试平台后,只需根据不同的项目输入接入参数,即可将用例测试平台直接使用或作为子序列进行调用。

本发明实施例还提供了一种测试序列组建装置,如图2所示,该测试序列组建装置主要包括序列搭建模块1、平台封装模块2和平台接入模块3。其中,序列搭建模块1用于根据测试用例搭建测试序列。平台封装模块2用于将序列搭建模块1所搭建的测试序列封装为用例测试平台。平台接入模块3用于将平台封装模块2所封装的用例测试平台接入至所需要的自动化测试项目中。

如图2所示,在可选实施例中,测试序列组建装置还可进一步包括用例筛选模块4。用例筛选模块4用于从多个自动化测试项目中筛选出可供其中至少一个自动化测试项目所使用的测试用例。

如图2所示,在可选实施例中,测试序列组建装置还可进一步包括参数设置模块5。参数设置模块5用于根据接入用例测试平台的自动化测试项目,对用例测试平台的接入参数进行设置。

本发明实施例还提供了一种自动化测试方法,该方法是在上述测试序列组建方法的基础上实现的,其包括以下步骤:

步骤a、执行如上述各项实施例中任一项实施例所述的测试序列组建方法;

步骤b、执行自动化测试项目的测试流程。

本发明实施例还提供了一种自动化测试系统,该系统包括如上述各项实施例中任一项实施例所述的测试序列组建装置和自动化测试模块。其中,自动化测试模块用于执行自动化测试项目的测试流程。

本发明实施例的测试序列组建方法和装置、以及自动化测试方法和系统,通过将不同自动化测试项目中的功能相同的测试序列封装为用例测试平台,进而,在每次自动化测试项目执行之前,无需再重新逐条建立变量、重新搭建测试序列,只需对应于所需要的自动化测试项目将用例测试平台的接入参数进行相应修改即可接入所需要的自动化测试项目中使用,从而节省了重新逐条建立变量、重新搭建测试序列的时间,提高了测试效率,缩短项目周期。

应当理解,虽然本说明书是按照各个实施方式描述的,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施方式中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。

上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,而并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方案或变更,如特征的组合、分割或重复,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1