一种汽车仪表测试用例集生成方法

文档序号:10512095阅读:1013来源:国知局
一种汽车仪表测试用例集生成方法
【专利摘要】一种汽车仪表测试用例集生成方法,本发明涉及汽车仪表测试用例集生成方法。本发明是要解决现有的测试用例对知识和经验有着极高的要求、测试效率和成本开销都很大,易受测试人员主观影响以及半自动化生成测试用例效果不是十分理想的问题,而提出的一种汽车仪表测试用例集生成方法。该方法是通过一、生成汽车仪表测试用例集;二、确定测试用例表的行数r;三、确定m个参数的覆盖率p;四、当r≥max(ti1*ti2*…tik)且p≥(t1*t2*…tn)/(t1*t2*…tm)生成最终的测试用例集;五、如不符合步骤四的条件重复步骤一至步骤四直至符合步骤四为止等步骤实现的。本发明应用于汽车仪表测试用例集生成方法领域。
【专利说明】
_种汽车仪表测试用例集生成方法
技术领域
[0001]本发明涉及汽车仪表测试用例集自动生成方法。
【背景技术】
[0002]汽车仪表是汽车的重要组成部分,它是驾驶员和汽车状态指示的依据,所以仪表的研发质量至关重要,为了保证仪表研发质量,必须对仪表进行一系列测试,其中功能测试是非常重要,它在研发阶段确保了产品质量。测试用例是仪表测试的依据,测试用例设计的好坏将直接影响到测试工作的成功与否。目前大多数公司还处在人工编写测试用例阶段,它对测试人员所具备的知识和经验有着极高的要求,再有这种方式测试效率和成本开销都很大,易受测试人员主观影响,也有一些公司采用半自动化生成测试用例的方式,但效果不是十分理想,技术尚不完全成熟,所以汽车仪表测试用例的自动生成方法尤为重要。

【发明内容】

[0003]本发明的目的是为了解决现有的测试用例对知识和经验有着极高的要求、测试效率和成本开销都很大,易受测试人员主观影响以及半自动化生成测试用例效果不是十分理想的问题,而提出的一种汽车仪表测试用例集生成方法。
[0004]上述的发明目的是通过以下技术方案实现的:
[0005]步骤一、采用组合覆盖算法根据汽车仪表的实际功能特性生成汽车仪表测试用例集;
[0006]步骤二、假设汽车仪表测试用例集的输入参数共有k个,且k个参数中每个参数的取值为U,i = l,2,…n,每个参数取值总数η生成测试用例集η个因素,根据测试用例集η因素确定测试用例表的行数r;其中,ti > t2 >…tn;
[0007]步骤三、在为汽车仪表测试用例集所生成的η维组合覆盖表A中,确定m个参数的覆盖率P;系统设定m个参数;
[0008]步骤四、当测试用例集生成的η因素测试用例表的行数r满足:
[0009]r > max(tii*ti2*-,,tik)l < ii 关 i2...关 ik<m
[0010]且p满足:
[0011]P > (tl*t2*...tn)/(tl*t2*...tm)
[0012]生成最终的汽车仪表测试用例集;
[0013]其中,tik为第k个参数的第i个取值;n^ k;
[0014]步骤五、当1'<11^(1^1*1^2*."1^)或?<(1:1衬2*."1:11)/(ti*t2*."tm)时,利用逐条比对法寻找步骤一生成的汽车仪表测试用例集的汽车仪表的实际功能遗漏项,将所需遗漏项补入到步骤一生成的汽车仪表测试用例集中重复步骤二至步骤五直至生成最终的汽车仪表测试用例集。
[0015]发明效果
[0016]本发明主要考虑汽车仪表产品质量的重要性,及该产品系统的重杂性,对其进行验证需要规模庞大的测试用例,所以提高测试效率的一个重要途径就是尽可能地实现自动化测试。测试用例自动生成技术不仅能提高测试效率,降低测试成本,而且对测试质量也能起到很好的保证作用。
[0017]组合覆盖方法作为一种非常重要的测试用例生成方法,充分考虑了系统中各个输入参数及其组合之间的相互作用可能对系统产生的影响。它根据系统中各种因素的相互关系,能够生成尽可能少的测试数据来实现尽可能完备的覆盖。同时,这些不完全测试的结果能够反映完全测试的内在规律且具有代表性,这种方法对于系统因素相互作用而导致的系统故障具有较强的检测能力。这样就可以针对实际需要,选择那些具有代表性的尽可能少的测试用例去尽可能多地覆盖一些影响系统的因素,并使得这样执行后得到的测试结果能够反映全面测试的内在规律,且能够很好地检测那些由于某些输入参数相互作用而导致的系统故障。
[0018]本发明实现了汽车仪表测试用例的自动生成,最重要的两步是基本测试用例的生成和对测试用例覆盖率的检查,当被测系统需要进行输入参数的增减时,都可以对其进行灵活处理,所以具有很好的灵活性和可扩展性。
【附图说明】
[0019]图1【具体实施方式】一提出的一种汽车仪表测试用例集生成方法流程图;
[0020]图2为【具体实施方式】一提出的组合覆盖算法过程原理结构图。
【具体实施方式】
[0021]【具体实施方式】一:本实施方式的一种汽车仪表测试用例集生成方法,具体是按照以下步骤制备的:
[0022]步骤一、采用组合覆盖算法根据汽车仪表的实际功能特性生成汽车仪表测试用例集;组合覆盖算法过程原理结构如图2所示;
[0023]步骤二、假设汽车仪表测试用例集的输入参数共有k个,且k个参数中每个参数的取值为U,i = l,2,…n,每个参数取值总数η生成测试用例集η个因素,根据测试用例集η因素确定测试用例表的行数r;其中,ti > t2 >…tn;
[0024]步骤三、覆盖率是度量测试完整性的一个手段,对算法生成后测试用例完全程度的评测;理想情况覆盖率100%为一次完整覆盖,但是实际上需要根据具体情况而定;为了便于计算覆盖率,现给出如下定义:在为汽车仪表测试用例集所生成的η维组合覆盖表A中,确定m个参数的覆盖率P ;系统设定m个参数;
[0025]步骤四、当测试用例集生成的η因素测试用例表的行数r满足:
[0026]r > max(tii*ti2*-,,tik)l < ii 关 i2...关 ik<m
[0027]且p满足:
[0028]p > (tl*t2*...tn)/(tl*t2*...tm)
[0029]生成最终的汽车仪表测试用例集;
[0030]其中,tik为第k个参数的第i个取值;n<m<k;
[0031 ]步骤五、当1'<11^(1^1*1^2*."1^)或?<(1:1*七2*."1:11)/ (tl*t2* …tm)时,利用逐条比对法寻找步骤一生成的汽车仪表测试用例集的汽车仪表的实际功能遗漏项,将所需的遗漏项补入到步骤一生成的汽车仪表测试用例集中重复步骤二至步骤五直至生成最终的汽车仪表测试用例集如图1;从遗漏项中删除所需遗漏项作为备选遗漏项;
[0032]根据上一步的覆盖率检查评判结果进行测试用例的补充与完善,主要就是依据已经生成的基本测试用例是否满足覆盖率,将测试用例补充到前面己经生成的测试用例集中,使之形成为完整的测试用例表。
[0033]本实施方式效果:
[0034]本实施方式主要考虑汽车仪表产品质量的重要性,及该产品系统的重杂性,对其进行验证需要规模庞大的测试用例,所以提高测试效率的一个重要途径就是尽可能地实现自动化测试。测试用例自动生成技术不仅能提高测试效率,降低测试成本,而且对测试质量也能起到很好的保证作用。
[0035]组合覆盖方法作为一种非常重要的测试用例生成方法,充分考虑了系统中各个输入参数及其组合之间的相互作用可能对系统产生的影响。它根据系统中各种因素的相互关系,能够生成尽可能少的测试数据来实现尽可能完备的覆盖。同时,这些不完全测试的结果能够反映完全测试的内在规律且具有代表性,这种方法对于系统因素相互作用而导致的系统故障具有较强的检测能力。这样就可以针对实际需要,选择那些具有代表性的尽可能少的测试用例去尽可能多地覆盖一些影响系统的因素,并使得这样执行后得到的测试结果能够反映全面测试的内在规律,且能够很好地检测那些由于某些输入参数相互作用而导致的系统故障。
[0036]本实施方式实现了汽车仪表测试用例的自动生成,最重要的两步是基本测试用例的生成和对测试用例覆盖率的检查,当被测系统需要进行输入参数的增减时,都可以对其进行灵活处理,所以具有很好的灵活性和可扩展性。
[0037]【具体实施方式】二:本实施方式与【具体实施方式】一不同的是:步骤一中采用组合覆盖算法根据汽车仪表的实际功能特性生成汽车仪表测试用例集具体为:
[0038]步骤一一、将汽车仪表的实际功能特性分为三个层,第一层是基础层、第二层是应用层和第三层是信号层;
[0039]步骤一二、就图2而言,网络模型中的三个层分别为基础层、应用层和信号层,基础层、应用层和信号层分别含有N个节点;分别在基础层、应用层和信号层中各选择一个节点,将选择的三个节点一条路径;
[0040]步骤一三、重复步骤一二将基础层、应用层和信号层中的所有节点选择完毕得到N条路径,N条路径即为汽车仪表测试用例集;其中,M条路径中的每一条路径的三个点的组合均不相同,基础层、应用层和信号层中已选择过的点不进行再选择;
[0041 ]例如节点I的号串1-1-1为一条路径,1-2-1等,第一层取第I个节点值,第二层取第I个节点值,第三层取第I个节点值,然后第一层再取第I个节点值,第二层取第2个节点值,第三层取第I个节点值,依此类推,这样就能非常方便地用一系列的节点号串形成的序列去表示一条对应的测试用例。其它步骤及参数与【具体实施方式】一相同。
[0042]【具体实施方式】三:本实施方式与【具体实施方式】一或二不同的是:所述基础层用于控制基本功能信息:基础层包括显示装置,指示灯,液晶显示,声音报警装置,功能按键,输出仪表和电源管理装置。其它步骤及参数与【具体实施方式】一或二相同。
[0043]【具体实施方式】四:本实施方式与【具体实施方式】一至三之一不同的是:所述应用层硬件主要包括车速表、转速表、燃油表、水温表、左转向指示灯和右转向指示灯;应用层系统主要包括开机启动界面,菜单界面,超速报警系统,安全带未系报警系统,供电电压和静态电流系统。其它步骤及参数与【具体实施方式】一至三之一相同。
[0044]【具体实施方式】五:本实施方式与【具体实施方式】一至四之一不同的是:所述信号层,主要包括 CAN信号(控制器局域网络(Controler Area Network, CAN))和TTL (Trans is tor-Transistor logic晶体管_晶体管逻辑集成电路)信号。其它步骤及参数与【具体实施方式】一至四之一相同。
【主权项】
1.一种汽车仪表测试用例集生成方法,其特征在于:一种汽车仪表测试用例集生成方法具体是按照以下步骤进行的: 步骤一、采用组合覆盖算法根据汽车仪表的实际功能特性生成汽车仪表测试用例集;步骤二、假设汽车仪表测试用例集的输入参数共有k个,且k个参数中每个参数的取值为1,? = 1,2,…n,每个参数取值总数η生成测试用例集η个因素,根据测试用例集η因素确定测试用例表的行数Γ;其中,tl > t2 > -"tn; 步骤三、在为汽车仪表测试用例集所生成的η维组合覆盖表A中,确定m个参数的覆盖率P;系统设定m个参数; 步骤四、当测试用例集生成的η因素测试用例表的行数r满足: r > max(tii*ti2*."tik) I < ii 关 i2...关 ik<m 且P满足:P > (tl*t2*."tn)/(tl*t2*H.tm) 生成最终的汽车仪表测试用例集; 其中,tik为第k个参数的第i个取值;n ^ m < k; 步骤五、当r<max(tii*ti2*…tik)或p< (ti*t2*…tn)/(ti*t2*…tm)时,利用逐条比对法寻找步骤一生成的汽车仪表测试用例集的汽车仪表的实际功能遗漏项,将所需遗漏项补入到步骤一生成的汽车仪表测试用例集中重复步骤二至步骤五直至生成最终的汽车仪表测试用例集。2.根据权利要求1所述一种汽车仪表测试用例集生成方法,其特征在于:步骤一中采用组合覆盖算法根据汽车仪表的实际功能特性生成汽车仪表测试用例集具体为: 步骤一一、将汽车仪表的实际功能特性分为三个层,第一层是基础层、第二层是应用层和第三层是信号层; 步骤一二、分别在基础层、应用层和信号层中各选择一个节点,将选择的三个节点一条路径;其中,基础层、应用层和信号层分别含有N个节点; 步骤一三、重复步骤一二将基础层、应用层和信号层中的所有节点选择完毕得到N条路径,N条路径即为汽车仪表测试用例集;其中,M条路径中的每一条路径的三个点的组合均不相同,基础层、应用层和信号层中已选择过的点不进行再选择。3.根据权利要求2所述一种汽车仪表测试用例集生成方法,其特征在于:所述基础层用于控制基本功能信息:基础层包括显示装置,指示灯,液晶显示,声音报警装置,功能按键,输出仪表和电源管理装置。4.根据权利要求2所述一种汽车仪表测试用例集生成方法,其特征在于:所述应用层硬件主要包括车速表、转速表、燃油表、水温表、左转向指示灯和右转向指示灯;应用层系统主要包括开机启动界面,菜单界面,超速报警系统,安全带未系报警系统,供电电压和静态电流系统。5.根据权利要求2所述一种汽车仪表测试用例集生成方法,其特征在于:所述信号层,主要包括CAN信号和TTL信号。
【文档编号】G06F11/36GK105868107SQ201610177857
【公开日】2016年8月17日
【申请日】2016年3月24日
【发明人】侯影, 李宏梅, 芦婷, 郑伟
【申请人】航天科技控股集团股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1