一种测试数据的生成方法及系统的制作方法

文档序号:10593996阅读:222来源:国知局
一种测试数据的生成方法及系统的制作方法
【专利摘要】本申请公开了一种测试用例生成测试数据的方法及系统,使用Excel对测试用例进行编辑和归档,得到测试用例列表,从测试用例列表的第一页测试用例开始,逐次获取每一页中每一条测试用例内容,并根据参数配置表替代待转换测试用例中需要配置的参数,定义测试数据,将初始值列表中所有输入信号初始值赋值给测试数据,将与待转换测试用例中的输出信号名称序列对应的输出信号值赋值给测试数据,然后将时间序列和数据序列转换成对应的测试数据,并赋值给测试数据中与时间序列和数据序列对应的输入信号名称相同的输入信号名称的对应位置。本发明使用Excel对测试用例进行归档,使用Matlab将Excel格式的测试用例自动生成测试数据。
【专利说明】
-种测试数据的生成方法及系统
技术领域
[0001] 本发明设及模型化软件开发测试技术领域,更具体的说,设及一种测试数据的生 成方法及系统。
【背景技术】
[0002] 随着软件开发模式从手写代码到模型化软件开发的转变,越来越多的企业采用 Mathworks公司推出的Matlab的Simul ink、Statef low或!"arget link的模型软件开发工具。 基于模型化的软件开发与手写代码相比,具有高质量和高效率的优势。模型化软件开发,在 模型成型之后,可W基于设计任务书进行前期的测试验证,而不必等输入到真实的控制器 在进行测试验证。
[0003] 在模型化软件测试阶段,需要根据设计任务设计测试用例,并且测试用例需要受 控,运就要求测试用例需要形成正式的文档。如何将测试用例文档格式转换为模型化软件 开发工具可执行的测试数据是软件测试人员需要研究的问题。目前,测试人员主要根据测 试用例手动编写测试数据,但是由于各个项目的控制参数不同,无法避免重复工作,因此, 工作效率低,并且无法保证测试数据与测试用例完全一致。
[0004] 综上,如何提供一种测试数据的生成方法及系统,在确保测试用例与测试数据一 致性的同时提高工作效率是本领域技术人员亟待解决的技术问题。

【发明内容】

[0005] 有鉴于此,本发明提供一种测试数据的生成方法及系统,W实现在确保测试用例 与测试数据一致性的同时提高工作效率。
[0006] -种测试数据的生成方法,包括:
[0007] 计算得到测试用例列表的总页数n,其中,所述测试用例列表为Excel列表,包括: 测试用例编号序列、输入时间序列、输入信号名称序列、与输入信号名称序列对应的输入数 据序列、输出时间序列、输出信号名称序列和与输出信号名称序列对应的输出数据序列,其 中,n为正整数;
[000引从所述测试用例列表的第一页开始,逐次对每一页中的测试用例进行转换,直至n 页全部转换完成,每一页中的测试用例的转换过程执行如下步骤:
[0009] 获取待转换页中包含的多条测试用例的内容,并计算所述待转换页中包含的测试 用例条数m,m为正整数;
[0010] 从所述待转换页中第一条测试用例开始,逐次对每一条测试用例进行转换,直至m 条测试用例全部转换完成,每一条测试用例的转换过程执行如下步骤:
[0011] 将待转换测试用例中需要配置的参数用预先获取并存储的参数配置表中对应参 数的值进行替代,所述参数配置表为Excel列表,所述参数配置表中记录有配置参数名称W 及与所述配置参数对应的配置参数对应值,所述需要配置的参数包括:输入时间序列、与输 入信号名称序列对应的输入数据序列、输出时间序列和与输出信号名称序列对应的输出数 据序列;
[0012] 将参数配置完成的待转换测试用例的时间序列由字符串类型转换为数组类型,数 据序列由字符串类型转换为数组类型,其中,时间序列包括输入时间序列和输出时间序列, 所述数据序列包括输入数据序列和输出数据序列;
[0013] 判断数组类型的时间序列长度和数组类型的数据序列长度是否相同;
[0014] 如果是,则定义测试数据,并将预先获取并存储的初始值列表中所有输入信号初 始值赋值给所述测试数据,所述初始值列表为与所述测试用例列表对应的被测软件模型的 所有输入信号的初始值列表,所述初始值列表中记录有输入信号名称序列W及与所述输入 信号名称序列对应的输入信号初始值;
[0015] 将与所述参数配置完成的待转换测试用例中的输出信号名称序列对应的输出信 号值赋值给所述测试数据,其中,所述输出信号值为空;
[0016] 将数组类型的时间序列转换成对应的时间测试数据,数组类型的数据序列转换成 对应的数据测试数据;
[0017] 将所述时间测试数据赋值给所述测试数据中、且与所述时间测试数据对应的输入 信号名称相同的输入信号名称的对应位置,同时将所述数据测试数据赋值给所述测试数据 中与所述数据测试数据对应的输入信号名称相同的输入信号名称的对应位置。
[001引优选的,还包括:
[0019] 如果否,则输出警示信息,并结束测试数据生成流程。
[0020] 优选的,所述将数组类型的时间序列转换成对应的时间测试数据,数组类型的数 据序列转换成对应的数据测试数据包括:
[0021] 判断所述参数配置完成的待转换待测用例中包含的信号个数与数据序列个数是 否相同,其中,所述信号个数为输入信号和输出信号的个数总和,数据序列个数为输入数据 序列和输出数据序列的个数总和;
[0022] 如果是,则将数组类型的时间序列转换成对应的时间测试数据,数组类型的数据 序列转换成对应的数据测试数据。
[0023] 优选的,所述将数组类型的时间序列转换成对应的时间测试数据,数组类型的数 据序列转换成对应的数据测试数据包括:
[0024] 判断所述参数配置完成的待转换待测用例中包含的输入信号是否都包含在所述 所有输入信号初始值中;
[0025] 如果是,则将数组类型的时间序列转换成对应的时间测试数据,数组类型的数据 序列转换成对应的数据测试数据。
[0026] 优选的,当所述时间序列为相对时间时,则相对时间序列的转换过程为:
[0027] 将所述时间序列中数值的第一个数据对应的时间设置为0,第Cl个数值对应的绝 对时间为第Cl个时间序列W前所有时间点之和与1作差后乘W预设仿真步长,其中,Cl为大 于1的正整数。
[0028] -种测试数据的生成系统,包括:
[0029] 计算单元,用于计算得到测试用例列表的总页数n,其中,所述测试用例列表为 Excel列表,包括:测试用例编号序列、输入时间序列、输入信号名称序列、与输入信号名称 序列对应的输入数据序列、输出时间序列、输出信号名称序列和与输出信号名称序列对应 的输出数据序列,其中,n为正整数;
[0030] 从所述测试用例列表的第一页开始,逐次对每一页中的测试用例进行转换,直至n 页全部转换完成,每一页中的测试用例的转换过程执行如下单元:
[0031] 获取单元,用于获取待转换页中包含的多条测试用例的内容,并计算所述待转换 页中包含的测试用例条数m,m为正整数;
[0032] 从所述待转换页中第一条测试用例开始,逐次对每一条测试用例进行转换,直至m 条测试用例全部转换完成,每一条测试用例的转换过程执行如下单元:
[0033] 参数配置单元,用于将待转换测试用例中需要配置的参数用预先获取并存储的参 数配置表中对应参数的值进行替代,所述参数配置表为Excel列表,所述参数配置表中记录 有配置参数名称W及与所述配置参数对应的配置参数对应值,所述需要配置的参数包括: 输入时间序列、与输入信号名称序列对应的输入数据序列、输出时间序列和与输出信号名 称序列对应的输出数据序列;
[0034] 转换单元,用于将参数配置完成的待转换测试用例的时间序列由字符串类型转换 为数组类型,数据序列由字符串类型转换为数组类型,其中,时间序列包括输入时间序列和 输出时间序列,所述数据序列包括输入数据序列和输出数据序列;
[0035] 判断单元,用于判断数组类型的时间序列长度和数组类型的数据序列长度是否相 同;
[0036] 测试数据定义单元,用于在所述判断单元判断为是的情况下,定义测试数据,并将 预先获取并存储的初始值列表中所有输入信号初始值赋值给所述测试数据,所述初始值列 表为与所述测试用例列表对应的被测软件模型的所有输入信号的初始值列表,所述初始值 列表中记录有输入信号名称序列W及与所述输入信号名称序列对应的输入信号初始值;
[0037] 第一赋值单元,用于将与所述参数配置完成的待转换测试用例中的输出信号名称 序列对应的输出信号值赋值给所述测试数据,其中,所述输出信号值为空;
[0038] 转换单元,用于将数组类型的时间序列转换成对应的时间测试数据,数组类型的 数据序列转换成对应的数据测试数据;
[0039] 第二赋值单元,用于将所述时间测试数据赋值给所述测试数据中、且与所述时间 测试数据对应的输入信号名称相同的输入信号名称的对应位置,同时将所述数据测试数据 赋值给所述测试数据中与所述数据测试数据对应的输入信号名称相同的输入信号名称的 对应位置。
[0040] 优选的,还包括:
[0041] 警示单元,用于在所述判断单元判断为否的情况下,输出警示信息,并结束测试数 据生成流程。
[0042] 优选的,所述转换单元包括:
[0043] 第一判断子单元,用于判断所述参数配置完成的待转换待测用例中包含的信号个 数与数据序列个数是否相同,其中,所述信号个数为输入信号和输出信号的个数总和,数据 序列个数为输入数据序列和输出数据序列的个数总和;
[0044] 第一转换子单元,用于在所述第一判断子单元判断为是的情况下,将数组类型的 时间序列转换成对应的时间测试数据,数组类型的数据序列转换成对应的数据测试数据。
[0045] 优选的,所述转换单元包括:
[0046] 第二判断子单元,用于判断所述参数配置完成的待转换待测用例中包含的输入信 号是否都包含在所述所有输入信号初始值中;
[0047] 第二转换子单元,用于在所述第二判断子单元判断为是的情况下,将数组类型的 时间序列转换成对应的时间测试数据,数组类型的数据序列转换成对应的数据测试数据。
[0048] 从上述的技术方案可W看出,本发明提供了一种测试数据的生成方法及系统,使 用Excel对测试用例进行编辑和归档,得到测试用例列表,从测试用例列表的第一页测试用 例开始,逐次获取每一页中每一条测试用例内容,并根据参数配置表替代待转换测试用例 中需要配置的参数,定义测试数据,将初始值列表中所有输入信号初始值赋值给该测试数 据,将与参数配置完成的待转换测试用例中的输出信号名称序列对应的输出信号值赋值给 该测试数据,然后将时间序列和数据序列转换成对应的测试数据,并赋值给测试数据中与 时间序列和数据序列对应的输入信号名称相同的输入信号名称的对应位置。可W看出,本 发明使用Excel对测试用例进行归档,使用Matlab将Excel格式的测试用例自动生成测试数 据,因为是直接读取并换装Excel格式的测试用例,所W本发明在确保测试用例与测试数据 一致性的同时提高了工作效率。
【附图说明】
[0049] 为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本 发明的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可W根据 提供的附图获得其他的附图。
[0050] 图1为本发明实施例公开的一种测试数据的生成方法流程图;
[0051] 图2为本发明实施例公开的一种测试数据的生成系统的结构示意图。
【具体实施方式】
[0052] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完 整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于 本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他 实施例,都属于本发明保护的范围。
[0053] 本发明实施例公开了一种测试数据的生成方法及系统,W实现在确保测试用例与 测试数据一致性的同时提高工作效率。
[0054] 参见图1,本发明实施例提供的一种测试数据的生成方法流程图,包括步骤:
[0055] 步骤S11、计算得到测试用例列表的总页数n;
[0056] 需要说明的是,通过打开测试用例对应的Excel应用层程序的API (Application Programming Inte计ace,应用程序编程接口)查找到测试用例列表,从而计算得到测试用 例列表的总页数n。
[0057] 其中,所述测试用例列表为Excel列表,包括:测试用例编号序列、输入时间序列、 输入信号名称序列、与输入信号名称序列对应的输入数据序列、输出时间序列、输出信号名 称序列和与输出信号名称序列对应的输出数据序列,其中,n为正整数。
[0058] 需要说明的是,输入信号名称序列具体指的是测试用例较初始值有变化的输入信 号名称序列,输出信号名称序列具体指的是测试用例需要观测的输出信号名称序列。
[0059] 测试用例列表的书写格式具体参见表1:
[0060] 表 1
[0061]
[0062] 从表1中可W看出,测试用例列表
的书写格式为:第一列表示测试用例编号 TestCaseNr,第二列表示输入时间序列InputTime,第S列表示输入信号名称序列 I吨UtVar化Ies,第四列表示第S列输入信号名称序列对应的输入数据序列I吨Ut化Iue,第 五列表示输出时间序列Ou化UtTime,第六列表示输出信号名称序列Ou化Ut化ribles,第屯 列表示第六列输出信号名称序列对应的输出数据序列Ou化Ut化lue。
[0063] 需要说明的是,如果需要用不同的页区分不同功能的测试用例,还可W增加页,各 页的格式相同。
[0064] 为使测试用例列表更完善,测试用例列表中还可W增加一些列,W描述测试用例 的测试要点,例如测试用例名称等。
[0065] 步骤S12、判断i页在测试用例列表中的页数是否小于n+1,如果是,则执行步骤 Sl 3,否则,结束测试数据生成流程;
[0066] 步骤S13、获取i页中包含的多条测试用例的内容,并计算所述i页中包含的测试用 例条数m,m为正整数;
[0067] 步骤S14、将j条测试用例中需要配置的参数用预先获取并存储的参数配置表中对 应参数的值进行替代;
[0068] 所述参数配置表为Excel列表,所述参数配置表中记录有配置参数名称W及与所 述配置参数对应的配置参数对应值,所述需要配置的参数包括:输入时间序列、与输入信号 名称序列对应的输入数据序列、输出时间序列和与输出信号名称序列对应的输出数据序 列。
[0069] 参数配置表的书写格式参见表2:
[0070] 表 2
[0071]
[0072]
[0073] 从表2中可W看出,参数配置表的第一列表示配置参数名称,第二列表示配置参数 对应值。
[0074] 其中,在绘制参数配置表时,参数配置表为单独一页。
[0075] 需要说明的是,当待转换测试用例中参数变化时,只需更新参数配置表中相应参 数即可。
[0076] 为使参数配置表更完善,参数配置表中还可W增加描述参数的列。
[0077] 步骤S15、将参数配置完成的待转换测试用例的时间序列由字符串类型转换为数 组类型,数据序列由字符串类型转换为数组类型;
[0078] 其中,时间序列包括输入时间序列和输出时间序列,所述数据序列包括输入数据 序列和输出数据序列。
[0079] 步骤S16、判断数组类型的时间序列长度和数组类型的数据序列长度是否相同,如 果是,则执行步骤S17;
[0080] 步骤S17、定义测试数据,并将预先获取并存储的初始值列表中所有输入信号初始 值赋值给所述测试数据;
[0081] 其中,测试数据为一个空的存储空间,本发明通过将测试用例转换对应的测试数 据,并将测试数据添加到W测试数据命名的空的存储空间中,完成将测试用例生成测试数 据的过程。
[0082] 需要说明的是,所述初始值列表为与所述测试用例列表对应的被测软件模型的所 有输入信号的初始值列表,所述初始值列表中记录有输入信号名称序列W及与所述输入信 号名称序列对应的输入信号初始值。
[0083] 初始值列表的书写格式参见表3:
[0084] 表 3
[0086] 从表3中可W看出,初始值列表的第一列表示输入信号名称,第二类表示输入信号 名称对应的输入信号初始值。
[0087] 此处定义好初始值后,在测试用例列表中每条测试用例不用再填写不变化的信 号。
[0088] 为便于理解,还可W增加描述信号的列。
[0089] 步骤S18、将与所述参数配置完成的待转换测试用例中的输出信号名称序列对应 的输出信号值赋值给所述测试数据;
[0090] 其中,所述输出信号值为空。
[0091] 步骤S19、将数组类型的时间序列转换成对应的时间测试数据,数组类型的数据序 列转换成对应的数据测试数据;
[0092] 步骤S20、将所述时间测试数据赋值给所述测试数据中、且与所述时间测试数据对 应的输入信号名称相同的输入信号名称的对应位置,同时将所述数据测试数据赋值给所述 测试数据中与所述数据测试数据对应的输入信号名称相同的输入信号名称的对应位置;
[0093] 步骤S21、判断j条是否小于i页的m+1,如果是,则执行步骤S22,否则,执行步骤 S23;
[0094] 步骤S22、令j = j+l,并返回执行步骤S14;
[00巧]步骤S23、令i = i+l,并返回执行步骤S12。
[0096] 其中,测试数据的书写格式具体参见表4:
[0097] 表 4 「moRl
[0099] 综上可W看出,本发明提供的测试数据的生成方法,使用Excel对测试用例进行编 辑和归档,得到测试用例列表,从测试用例列表的第一页测试用例开始,逐次获取每一页中 每一条测试用例内容,并根据参数配置表替代待转换测试用例中需要配置的参数,定义测 试数据,将初始值列表中所有输入信号初始值赋值给该测试数据,将与参数配置完成的待 转换测试用例中的输出信号名称序列对应的输出信号值赋值给该测试数据,然后将时间序 列和数据序列转换成对应的测试数据,并赋值给测试数据中与时间序列和数据序列对应的 输入信号名称相同的输入信号名称的对应位置。可W看出,本发明使用Excel对测试用例进 行归档,使用Matlab将Excel格式的测试用例自动生成测试数据,因为是直接读取并换装 Excel格式的测试用例,所W本发明在确保测试用例与测试数据一致性的同时提高了工作 效率。
[0100] 其次,本发明使用的参数配置表,在项目变化导致参数变化时,测试用例依然可W 重复使用。
[0101] 最后,由于本发明通过API针对英的读取Excel文件中的内容,因此,可避免因为一 次性读取太多内容到Mat Iab内存而导致溢出。
[0102] 需要说明的是,测试用例列表中输入时间序列(InputTime)或输出时间序列 (OutputTime)中的第i个数值表示与输入数据序列(InputValue)或输出数据序列 (Ou化Ut化Iue)中相应第i个数值需要持续的仿真周期个数。当然也可W使用时间轴形式表 示第几秒数据发生变化。
[0103] 举例说明每条测试用例生成测试数据的过程(注:输入和输出的书写格式相同,故 转换的方式也相同):
[0104] 假设信号个数(具体某条测试用例输入信号个数或输出信号个数)为V,时间序列 数组长度为L(注:时间序列数组与数据序列数组长度相同);
[0105] 从1到L,逐一对每个信号的时间序列和数值进行转换的过程包括:
[0106] 判断Cl是否小于L+1;
[0107] 如果Cl不小于L+1,则将转换后的数据(包括时间测试数据和数据测试数据)赋值 给测试数据中与转换后的数据对应的信号域名相同的信号;
[0108] 如果Cl小于L+1,则判断Cl是否等于I;
[0109] 如果Cl等于1,则判断c2是否小于V+1;
[0110] 如果c2小于V+1,则在测试数据中找到域名与信号中第c2个信号相同的信号,其第 一列时间轴的第Cl个值为0,第二列数据轴的第Cl个数据为数据序列中第Cl个数值;
[0111] 如果Cl不等于1,则判断c2是否小于V+1;
[0112] 如果c2小于V+1,则第一列时间轴的第Cl个值为时间序列数组中第Cl个值W前所 有值之和再减1然后乘W预设仿真步长,第二列数据轴的第Cl个数据为数据序列中第Cl个 数值。
[0113] 其中,本发明中的时间序列定义为相对时间,而非绝对时间,定义为相对时间的优 势在于,如果时间序列中某一个点发生改变,只需要更改一个点,而如果是绝对时间,如果 其中一个时间点发生变化,则其后的所有点都需要相应变化,而不便于测试用例的修改。
[0114] 相对时间序列的转换过程为:
[0115] 将所述时间序列中数值的第一个数据对应的时间设置为0,第Cl个数值对应的绝 对时间为第Cl个时间序列W前所有时间点之和与1作差后乘W预设仿真步长,其中,输入时 间序列InputTime和输出时间序列Ou化UtTime中的每个数据都为正整数。
[0116] 为进一步优化上述实施例,还包括步骤:
[0117] 如果数组类型的时间序列长度和数组类型的数据序列长度不相同,则输出警示信 息,并结束测试数据生成流程。
[0118] 为进一步优化上述实施例,步骤S19包括:
[0119] 步骤S191、判断所述参数配置完成的待转换待测用例中包含的信号个数与数据序 列个数是否相同,如果是,则执行步骤S192;
[0120] 其中,所述信号个数为输入信号和输出信号的个数总和,数据序列个数为输入数 据序列和输出数据序列的个数总和。
[0121] 步骤S192、将数组类型的时间序列转换成对应的时间测试数据,数组类型的数据 序列转换成对应的数据测试数据。
[0122] 需要说明的是,当所述参数配置完成的待转换待测用例中包含的信号个数与数据 序列个数不相同时,则输出警示信息,并结束测试数据生成流程。
[0123] 为进一步优化上述实施例,步骤S19包括:
[0124] 步骤S193、判断所述参数配置完成的待转换待测用例中包含的输入信号是否都包 含在所述所有输入信号初始值中,如果是,则执行步骤S194;
[0125] 步骤S194、将数组类型的时间序列转换成对应的时间测试数据,数组类型的数据 序列转换成对应的数据测试数据。
[0126] 需要说明的是,所述参数配置完成的待转换待测用例中包含的输入信号没有都包 含在所述所有输入信号初始值中时,输出警示信息,并结束测试数据生成流程。
[0127] 与上述方法实施例相对应,本发明还提供了一种9测试数据的生成系统。
[0128] 参见图2,本发明实施例提供的一种测试数据的生成系统的结构示意图,包括:
[0129] 计算单元21,用于计算得到测试用例列表的总页数n,其中,所述测试用例列表为 Excel列表,包括:测试用例编号序列、输入时间序列、输入信号名称序列、与输入信号名称 序列对应的输入数据序列、输出时间序列、输出信号名称序列和与输出信号名称序列对应 的输出数据序列,其中,n为正整数;
[0130] 从所述测试用例列表的第一页开始,逐次对每一页中的测试用例进行转换,直至n 页全部转换完成,每一页中的测试用例的转换过程执行如下单元:
[0131] 获取单元22,用于获取待转换页中包含的多条测试用例的内容,并计算所述待转 换页中包含的测试用例条数m,m为正整数;
[0132] 从所述待转换页中第一条测试用例开始,逐次对每一条测试用例进行转换,直至m 条测试用例全部转换完成,每一条测试用例的转换过程执行如下单元:
[0133] 参数配置单元23,用于将待转换测试用例中需要配置的参数用预先获取并存储的 参数配置表中对应参数的值进行替代,所述参数配置表为Excel列表,所述参数配置表中记 录有配置参数名称W及与所述配置参数对应的配置参数对应值,所述需要配置的参数包 括:输入时间序列、与输入信号名称序列对应的输入数据序列、输出时间序列和与输出信号 名称序列对应的输出数据序列;
[0134] 转换单元24,用于将参数配置完成的待转换测试用例的时间序列由字符串类型转 换为数组类型,数据序列由字符串类型转换为数组类型,其中,时间序列包括输入时间序列 和输出时间序列,所述数据序列包括输入数据序列和输出数据序列;
[0135] 判断单元25,用于判断数组类型的时间序列长度和数组类型的数据序列长度是否 相同,如果是,则执行测试数据定义单元26;
[0136] 测试数据定义单元26,用于在所述判断单元26判断为是的情况下,定义测试数据, 并将预先获取并存储的初始值列表中所有输入信号初始值赋值给所述测试数据,所述初始 值列表为与所述测试用例列表对应的被测软件模型的所有输入信号的初始值列表,所述初 始值列表中记录有输入信号名称序列W及与所述输入信号名称序列对应的输入信号初始 值;
[0137] 第一赋值单元27,用于将与所述参数配置完成的待转换测试用例中的输出信号名 称序列对应的输出信号值赋值给所述测试数据,其中,所述输出信号值为空;
[0138] 转换单元28,用于将数组类型的时间序列转换成对应的时间测试数据,数组类型 的数据序列转换成对应的数据测试数据;
[0139] 第二赋值单元29,用于将所述时间测试数据赋值给所述测试数据中、且与所述时 间测试数据对应的输入信号名称相同的输入信号名称的对应位置,同时将所述数据测试数 据赋值给所述测试数据中与所述数据测试数据对应的输入信号名称相同的输入信号名称 的对应位置。
[0140] 综上可W看出,本发明提供的测试数据的生成系统,使用Excel对测试用例进行编 辑和归档,得到测试用例列表,从测试用例列表的第一页测试用例开始,逐次获取每一页中 每一条测试用例内容,并根据参数配置表替代待转换测试用例中需要配置的参数,定义测 试数据,将初始值列表中所有输入信号初始值赋值给该测试数据,将与参数配置完成的待 转换测试用例中的输出信号名称序列对应的输出信号值赋值给该测试数据,然后将时间序 列和数据序列转换成对应的测试数据,并赋值给测试数据中与时间序列和数据序列对应的 输入信号名称相同的输入信号名称的对应位置。可W看出,本发明使用Excel对测试用例进 行归档,使用Matlab将Excel格式的测试用例自动生成测试数据,因为是直接读取并换装 Excel格式的测试用例,所W本发明在确保测试用例与测试数据一致性的同时提高了工作 效率。
[0141] 其次,本发明使用的参数配置表,在项目变化导致参数变化时,测试用例依然可W 重复使用。
[0142] 最后,由于本发明通过API针对英的读取Excel文件中的内容,因此,可避免因为一 次性读取太多内容到Mat Iab内存而导致溢出。
[0143] 为进一步优化上述实施例,还包括:
[0144] 警示单元,用于在判断单元25判断为否的情况下,输出警示信息,并结束测试数据 生成流程。
[0145] 其中,转换单元28包括:
[0146] 第一判断子单元281,用于判断所述参数配置完成的待转换待测用例中包含的信 号个数与数据序列个数是否相同;
[0147] 其中,所述信号个数为输入信号和输出信号的个数总和,数据序列个数为输入数 据序列和输出数据序列的个数总和;
[0148] 第一转换子单元282,用于在第一判断子单元281判断为是的情况下,将数组类型 的时间序列转换成对应的时间测试数据,数组类型的数据序列转换成对应的数据测试数 据。
[0149] 需要说明的是,当所述参数配置完成的待转换待测用例中包含的信号个数与数据 序列个数不相同时,则输出警示信息,并结束测试数据生成流程。
[0150] 为进一步优化上述实施例,转换单元28还包括:
[0151] 第二判断子单元283,用于判断所述参数配置完成的待转换待测用例中包含的输 入信号是否都包含在所述所有输入信号初始值中;
[0152] 第二转换子单元284,用于在第二判断子单元283判断为是的情况下,将数组类型 的时间序列转换成对应的时间测试数据,数组类型的数据序列转换成对应的数据测试数 据。
[0153] 需要说明的是,所述参数配置完成的待转换待测用例中包含的输入信号没有都包 含在所述所有输入信号初始值中时,输出警示信息,并结束测试数据生成流程。
[0154] 需要说明的是,系统实施例中,各组成部分的具体工作原理请参见方法实施例对 应部分,本发明在此不做限定。
[0155] 最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将 一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示运些实体或操作 之间存在任何运种实际的关系或者顺序。而且,术语"包括"、"包含"或者其任何其他变体意 在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那 些要素,而且还包括没有明确列出的其他要素,或者是还包括为运种过程、方法、物品或者 设备所固有的要素。在没有更多限制的情况下,由语句"包括一个……"限定的要素,并不排 除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0156] 本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他 实施例的不同之处,各个实施例之间相同相似部分互相参见即可。
[0157] 对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。 对运些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的 一般原理可W在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明 将不会被限制于本文所示的运些实施例,而是要符合与本文所公开的原理和新颖特点相一 致的最宽的范围。
【主权项】
1. 一种测试数据的生成方法,其特征在于,包括: 计算得到测试用例列表的总页数n,其中,所述测试用例列表为Excel列表,包括:测试 用例编号序列、输入时间序列、输入信号名称序列、与输入信号名称序列对应的输入数据序 列、输出时间序列、输出信号名称序列和与输出信号名称序列对应的输出数据序列,其中,η 为正整数; 从所述测试用例列表的第一页开始,逐次对每一页中的测试用例进行转换,直至η页全 部转换完成,每一页中的测试用例的转换过程执行如下步骤: 获取待转换页中包含的多条测试用例的内容,并计算所述待转换页中包含的测试用例 条数m,m为正整数; 从所述待转换页中第一条测试用例开始,逐次对每一条测试用例进行转换,直至m条测 试用例全部转换完成,每一条测试用例的转换过程执行如下步骤: 将待转换测试用例中需要配置的参数用预先获取并存储的参数配置表中对应参数的 值进行替代,所述参数配置表为Excel列表,所述参数配置表中记录有配置参数名称以及与 所述配置参数对应的配置参数对应值,所述需要配置的参数包括:输入时间序列、与输入信 号名称序列对应的输入数据序列、输出时间序列和与输出信号名称序列对应的输出数据序 列; 将参数配置完成的待转换测试用例的时间序列由字符串类型转换为数组类型,数据序 列由字符串类型转换为数组类型,其中,时间序列包括输入时间序列和输出时间序列,所述 数据序列包括输入数据序列和输出数据序列; 判断数组类型的时间序列长度和数组类型的数据序列长度是否相同; 如果是,则定义测试数据,并将预先获取并存储的初始值列表中所有输入信号初始值 赋值给所述测试数据,所述初始值列表为与所述测试用例列表对应的被测软件模型的所有 输入信号的初始值列表,所述初始值列表中记录有输入信号名称序列以及与所述输入信号 名称序列对应的输入信号初始值; 将与所述参数配置完成的待转换测试用例中的输出信号名称序列对应的输出信号值 赋值给所述测试数据,其中,所述输出信号值为空; 将数组类型的时间序列转换成对应的时间测试数据,数组类型的数据序列转换成对应 的数据测试数据; 将所述时间测试数据赋值给所述测试数据中、且与所述时间测试数据对应的输入信号 名称相同的输入信号名称的对应位置,同时将所述数据测试数据赋值给所述测试数据中与 所述数据测试数据对应的输入信号名称相同的输入信号名称的对应位置。2. 根据权利要求1所述的生成方法,其特征在于,还包括: 如果否,则输出警示信息,并结束测试数据生成流程。3. 根据权利要求1所述的生成方法,其特征在于,所述将数组类型的时间序列转换成对 应的时间测试数据,数组类型的数据序列转换成对应的数据测试数据包括: 判断所述参数配置完成的待转换待测用例中包含的信号个数与数据序列个数是否相 同,其中,所述信号个数为输入信号和输出信号的个数总和,数据序列个数为输入数据序列 和输出数据序列的个数总和; 如果是,则将数组类型的时间序列转换成对应的时间测试数据,数组类型的数据序列 转换成对应的数据测试数据。4. 根据权利要求1所述的生成方法,其特征在于,所述将数组类型的时间序列转换成对 应的时间测试数据,数组类型的数据序列转换成对应的数据测试数据包括: 判断所述参数配置完成的待转换待测用例中包含的输入信号是否都包含在所述所有 输入信号初始值中; 如果是,则将数组类型的时间序列转换成对应的时间测试数据,数组类型的数据序列 转换成对应的数据测试数据。5. 根据权利要求1所述的生成方法,其特征在于,当所述时间序列为相对时间时,则相 对时间序列的转换过程为: 将所述时间序列中数值的第一个数据对应的时间设置为〇,第cl个数值对应的绝对时 间为第cl个时间序列以前所有时间点之和与1作差后乘以预设仿真步长,其中,cl为大于1 的正整数。6. -种测试数据的生成系统,其特征在于,包括: 计算单元,用于计算得到测试用例列表的总页数n,其中,所述测试用例列表为Excel列 表,包括:测试用例编号序列、输入时间序列、输入信号名称序列、与输入信号名称序列对应 的输入数据序列、输出时间序列、输出信号名称序列和与输出信号名称序列对应的输出数 据序列,其中,η为正整数; 从所述测试用例列表的第一页开始,逐次对每一页中的测试用例进行转换,直至η页全 部转换完成,每一页中的测试用例的转换过程执行如下单元: 获取单元,用于获取待转换页中包含的多条测试用例的内容,并计算所述待转换页中 包含的测试用例条数m,m为正整数; 从所述待转换页中第一条测试用例开始,逐次对每一条测试用例进行转换,直至m条测 试用例全部转换完成,每一条测试用例的转换过程执行如下单元: 参数配置单元,用于将待转换测试用例中需要配置的参数用预先获取并存储的参数配 置表中对应参数的值进行替代,所述参数配置表为Excel列表,所述参数配置表中记录有配 置参数名称以及与所述配置参数对应的配置参数对应值,所述需要配置的参数包括:输入 时间序列、与输入信号名称序列对应的输入数据序列、输出时间序列和与输出信号名称序 列对应的输出数据序列; 转换单元,用于将参数配置完成的待转换测试用例的时间序列由字符串类型转换为数 组类型,数据序列由字符串类型转换为数组类型,其中,时间序列包括输入时间序列和输出 时间序列,所述数据序列包括输入数据序列和输出数据序列; 判断单元,用于判断数组类型的时间序列长度和数组类型的数据序列长度是否相同; 测试数据定义单元,用于在所述判断单元判断为是的情况下,定义测试数据,并将预先 获取并存储的初始值列表中所有输入信号初始值赋值给所述测试数据,所述初始值列表为 与所述测试用例列表对应的被测软件模型的所有输入信号的初始值列表,所述初始值列表 中记录有输入信号名称序列以及与所述输入信号名称序列对应的输入信号初始值; 第一赋值单元,用于将与所述参数配置完成的待转换测试用例中的输出信号名称序列 对应的输出信号值赋值给所述测试数据,其中,所述输出信号值为空; 转换单元,用于将数组类型的时间序列转换成对应的时间测试数据,数组类型的数据 序列转换成对应的数据测试数据; 第二赋值单元,用于将所述时间测试数据赋值给所述测试数据中、且与所述时间测试 数据对应的输入信号名称相同的输入信号名称的对应位置,同时将所述数据测试数据赋值 给所述测试数据中与所述数据测试数据对应的输入信号名称相同的输入信号名称的对应 位置。7. 根据权利要求6所述的生成系统,其特征在于,还包括: 警示单元,用于在所述判断单元判断为否的情况下,输出警示信息,并结束测试数据生 成流程。8. 根据权利要求6所述的生成系统,其特征在于,所述转换单元包括: 第一判断子单元,用于判断所述参数配置完成的待转换待测用例中包含的信号个数与 数据序列个数是否相同,其中,所述信号个数为输入信号和输出信号的个数总和,数据序列 个数为输入数据序列和输出数据序列的个数总和; 第一转换子单元,用于在所述第一判断子单元判断为是的情况下,将数组类型的时间 序列转换成对应的时间测试数据,数组类型的数据序列转换成对应的数据测试数据。9. 根据权利要求6所述的生成系统,其特征在于,所述转换单元包括: 第二判断子单元,用于判断所述参数配置完成的待转换待测用例中包含的输入信号是 否都包含在所述所有输入信号初始值中; 第二转换子单元,用于在所述第二判断子单元判断为是的情况下,将数组类型的时间 序列转换成对应的时间测试数据,数组类型的数据序列转换成对应的数据测试数据。
【文档编号】G06F11/36GK105955887SQ201610288414
【公开日】2016年9月21日
【申请日】2016年5月4日
【发明人】刘冬群, 赵立波, 杨辉前, 贺刚, 苏岭, 周安健, 姚振辉, 刘波, 李连兴
【申请人】重庆长安汽车股份有限公司, 重庆长安新能源汽车有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1