正交表扩展装置、软件测试系统和正交表扩展方法.pdf

上传人:GAME****980 文档编号:1562001 上传时间:2018-06-24 格式:PDF 页数:18 大小:492.48KB
返回 下载 相关 举报
摘要
申请专利号:

CN201110431766.1

申请日:

2011.12.21

公开号:

CN103176893A

公开日:

2013.06.26

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||专利申请权的转移IPC(主分类):G06F 11/36变更事项:申请人变更前权利人:方正国际软件(北京)有限公司变更后权利人:北大医疗信息技术有限公司变更事项:地址变更前权利人:100080 北京市海淀区北四环西路52号方正国际大厦18层变更后权利人:100080 北京市海淀区北四环西路52号19层登记生效日:20150204|||实质审查的生效IPC(主分类):G06F 11/36申请日:20111221|||公开

IPC分类号:

G06F11/36

主分类号:

G06F11/36

申请人:

方正国际软件(北京)有限公司

发明人:

唐晓东; 杜旭明; 任丽丽

地址:

100080 北京市海淀区北四环西路52号方正国际大厦18层

优先权:

专利代理机构:

北京友联知识产权代理事务所(普通合伙) 11343

代理人:

尚志峰;汪海屏

PDF下载: PDF下载
内容摘要

本发明提供一种正交表扩展装置、一种软件测试系统和一种正交表扩展方法,其中,正交表扩展装置,包括:查询单元,从原有因素的水平数中,查询大于或等于新增因素的水平数的水平数,或乘积大于或等于所述新增因素的水平数的多个水平数;行列设置单元,根据查询出的水平数的数量,为所述新增因素设置列或行;填充单元,根据所述查询出的水平数对应的列或行中的水平分配规则,对所述新增因素的列或行进行填充。通过该技术方案,实现了新增因素的水平的合理填充,可以保证覆盖率较高而重复率较低,有效地利用了软件测试系统的处理器和内存等计算资源,且不需重新生成正交表,因此不会影响软件测试系统的工作效率。

权利要求书

权利要求书
1.   一种正交表扩展装置,其特征在于,包括:
查询单元,从原有因素的水平数中,查询大于或等于新增因素的水平数的水平数,或乘积大于或等于所述新增因素的水平数的多个水平数;
行列设置单元,根据查询出的水平数的数量,为所述新增因素设置列或行;
填充单元,根据所述查询出的水平数对应的列或行中的水平分配规则,对所述新增因素的列或行进行填充。

2.   根据权利要求1所述的正交表扩展装置,其特征在于,所述查询单元判断所述新增因素的水平数是否大于所述原有因素的最大水平数,并在判断结果为否时,查询大于或等于所述新增因素的水平数的水平数,在判断结果为是时,查询乘积大于或等于所述新增因素的水平数的多个水平数。

3.   根据权利要求2所述的正交表扩展装置,其特征在于,所述查询单元在判断结果为否时,在查询出第一个大于或等于所述新增因素的水平数的水平数时,停止查询,在判断结果为是时,在查询出第一组乘积大于或等于所述新增因素的水平数的多个水平数时,停止查询。

4.   根据权利要求3所述的正交表扩展装置,其特征在于,所述查询单元在判断结果为否时,优先查询等于所述新增因素的水平数的水平数,在判断结果为是时,优先查询乘积等于所述新增因素的水平数的多个水平数。

5.   根据权利要求1至4中任一项所述的正交表扩展装置,其特征在于,所述查询单元设置查询规则,并按所述查询规则对所述原有因素的水平数进行查询。

6.   一种软件测试系统,其特征在于,包括:
如权利要求1至5中任一项所述的正交表扩展装置。

7.   一种正交表扩展方法,其特征在于,包括:
步骤202,从原有因素的水平数中,查询大于或等于新增因素的水平数的水平数,或乘积大于或等于所述新增因素的水平数的多个水平数;
步骤204,根据查询出的水平数的数量,为所述新增因素设置列或行;
步骤206,根据所述查询出的水平数对应的列或行中的水平分配规则,对所述新增因素的列或行进行填充。

8.   根据权利要求7所述的正交表扩展方法,其特征在于,所述步骤202包括:
判断所述新增因素的水平数是否大于所述原有因素的最大水平数,并在判断结果为否时,查询大于或等于所述新增因素的水平数的水平数,在判断结果为是时,查询乘积大于或等于所述新增因素的水平数的多个水平数。

9.   根据权利要求8所述的正交表扩展方法,其特征在于,所述步骤202还包括:
在判断结果为否时,在查询出第一个大于或等于所述新增因素的水平数的水平数时,停止查询,在判断结果为是时,在查询出第一组乘积大于或等于所述新增因素的水平数的多个水平数时,停止查询。

10.   根据权利要求9所述的正交表扩展方法,其特征在于,所述步骤202还包括:
在判断结果为否时,优先查询等于所述新增因素的水平数的水平数,在判断结果为是时,优先查询乘积等于所述新增因素的水平数的多个水平数。

11.   根据权利要求7至10中任一项所述的正交表扩展方法,其特征在于,所述步骤202还包括:
设置查询规则,并按所述查询规则对所述原有因素的水平数进行查询。

说明书

说明书正交表扩展装置、软件测试系统和正交表扩展方法
技术领域
本发明涉及软件测试领域,具体而言,涉及一种正交表扩展装置、一种软件测试系统和一种正交表扩展方法。
背景技术
软件的正常运行可能受到众多因素的影响,并且因素之间的相互作用也可能会对软件的正常运行产生影响。因此在测试时不仅要考虑所有对软件产生影响的可能因素,而且对存在于这些因素之间的相互作用,就需要设计一个测试用例集,对系统因素的各种组合情况进行充分覆盖。软件测试中经常会碰到多个输入参数,每个参数多个取值的情况,假设所测试的某个软件单元中有6个输入参数,每个参数可以取4个值,如果做全面测试,需要设计4096个测试用例,这很不现实。测试是一个重要且代价昂贵的工作,如何在给定的有限的时间和资源设计较少的测试用例来获取最大的测试效果。
因此在实际测试工作中我们应用到了正交法,既能有效地减少测试用例数目,又能够保证测试结果不受太大的影响,从而避免了测试的片面性和盲目性,以下对本发明涉及到几个概念进行解释。
正交法:正交实验法就是利用排列整齐的表——正交表来对试验进行整体设计、综合比较、统计分析,实现通过少数的实验次数找到较好的生产条件,以达到最高生产工艺效果。正交表能够在因素变化范围内均衡抽样,使每次试验都具有较强的代表性,由于正交表具备均衡分散的特点,保证了全面实验的某些要求,这些试验往往能够较好或更好的达到实验的目的。
因素:指作试验研究过程的自变量,常常是造成试验指标按某种规律发生变化的那些原因。
水平:指试验中因素所处的具体状态或情况,又称为等级。下表水平
1、水平2、水平3等表示因素的不同水平。
如下表:以验证一个输出为例
  因素No.  输出介质  选择数据  Email  电话  水平数  3  2  2  2  水平1  硬盘  1条  不变更  不变更  水平2  CD  多条  变更  变更  水平3  DVD
以上表中,输出介质、选择数据、Email、电话为因素;硬盘、CD和DVD是输出介质的水平;输出介质有3个水平、选择数据有2个水平、Email有2个水平等;比如在试验时输出介质可能选择1条数据输出,硬盘作为输出存储的介质、输出前不对Email、电话做变更。
但是,在实际应用中我们会遇到如下的难题:用户需求的频繁变更、新功能的后期追加等因素影响,正交表需要跟随维护进行扩展,而正交表是在版本初期就已形成,水平、因素已经固定下来,可能会导致新增加的水平、因素无法添加,数据较多时可能需要重新生成正交表,为测试系统的处理器和内存造成压力,调整后还有可能需要进行重复性的测试步骤。
目前在使用正交表设计测试用例时,由于正交法是根据现有的功能点列出所有的水平和因素,套用正交法公式,而产生正交表,当有新功能或需求变更时,新的水平、因素产生,当正交表中已不能容纳新的水平、因素添加时,在未使用新的方案前,用到两种方法来处理:
1、在有新功能或变更时,水平、因素数增加,是直接在已有的正交表后追加,但是没有什么规则,由此会产生两种遗漏:一种是覆盖率达不到,因为未进行科学的计算而任意添加上的水平,可能会导致测试覆盖率达不到最大值;另一种是重复率,因为会由于功能的变动而在其后任意的追加,导致无法科学的维护,可能会有冗余的测试数据在其中,从而引起重复率较高的测试,浪费了处理器和内存等计算资源,降低了测试的效率。
2、按照新的水平、因素重新计算生成新的正交表,这种方法总结只适用于较为稳定的项目,对于频繁更新维护的状态下不适合,另外也较适用于小规模项目,因为有很多大型项目牵扯到的测试点会非常多,水平、因素数有的甚至上百上千条,如果由于需求变更,而重新生成正交表会占用大量时间和计算资源,显得不太现实,并且需要进行大量的维护。
因此,需要一种新的用于扩展正交表的技术方案,可以避免重新生成新的正交表,同时可以保证在正交表追加的水平具有一定的分配规则,可以使覆盖率、重复率都满足用户的要求,保证软件测试系统的计算资源能够合理使用,不会被用于重复计算,并能保证如软件测试系统的测试效率。
发明内容
本发明所要解决的技术问题在于,提供一种新的用于扩展正交表的技术方案,可以避免重新生成新的正交表,同时可以保证在正交表追加的水平具有一定的分配规则,可以使覆盖率、重复率都满足用户的要求,保证软件测试系统的计算资源能够合理使用,不会被用于重复计算,并能保证如软件测试系统的测试效率。
有鉴于此,本发明提供一种正交表扩展装置,包括:查询单元,从原有因素的水平数中,查询大于或等于新增因素的水平数的水平数,或乘积大于或等于所述新增因素的水平数的多个水平数;行列设置单元,根据查询出的水平数的数量,为所述新增因素设置列或行;填充单元,根据所述查询出的水平数对应的列或行中的水平分配规则,对所述新增因素的列或行进行填充。
通过该技术方案,实现了新增因素的水平的合理填充,使之按照其他因素的水平的分配规则,可以保证覆盖率较高而重复率较低,完成了正交表的扩展,有效地利用了软件测试系统的处理器和内存等计算资源,且不需重新生成正交表,因此不会影响软件测试系统的工作效率。具体地,可根据正交表的格式来调用绘制工具进行列(或行)扩展,以及读取水平分配规则并填充到列中。上述单元可以通过不同的处理器单元来实现,也可以集成到同一处理器单元上。
在上述技术方案中,优选地,所述查询单元判断所述新增因素的水平数是否大于所述原有因素的最大水平数,并在判断结果为否时,查询大于或等于所述新增因素的水平数的水平数,在判断结果为是时,查询乘积大于或等于所述新增因素的水平数的多个水平数。
通过该技术方案,由于取得多个水平数会导致多次的查询,会影响软件测试系统的效率,通过本方案可以判断出何时需要将取得多个水平数,既保证软件测试系统的顺利工作,又保证了软件测试系统的效率,而且水判断条件简单,方便实现本方案。
在上述技术方案中,优选地,所述查询单元在判断结果为否时,在查询出第一个大于或等于所述新增因素的水平数的水平数时,停止查询,在判断结果为是时,在查询出第一组乘积大于或等于所述新增因素的水平数的多个水平数时,停止查询。
通过该技术方案,只查找第一个或第一组可用的水平数后,便可以确定用于进行填充正交表的水平规则,不进行后续查询可以节省时间,提高正交表的生成效率,也即提高了软件测试系统的工作效率。
在上述技术方案中,优选地,所述查询单元在判断结果为否时,优先查询等于所述新增因素的水平数的水平数,在判断结果为是时,优先查询乘积等于所述新增因素的水平数的多个水平数。
通过该技术方案,可以在保证测试覆盖率较高的情况下,提高测试资源的利用效率,不会浪费资源进行无用的测试。
在上述技术方案中,优选地,所述查询单元设置查询规则,并按所述查询规则对所述原有因素的水平数进行查询。
通过该技术方案,可通过设置一定的规则,提高查找的效率,或实现查询结果的多样化,以保证正交表覆盖率高而重复率低,即保证软件测试系统的资源利用效率高,不会用于过多的重复性测试计算。
本发明还提供一种软件测试系统,包括:如上所述的正交表扩展装置。通过该技术方案,有效地利用了处理器和内存等计算资源,且不需重新生成正交表,因此不会影响软件测试系统的工作效率。
本发明还提供一种正交表扩展方法,包括:步骤202,从原有因素的水平数中,查询大于或等于新增因素的水平数的水平数,或乘积大于或等于所述新增因素的水平数的多个水平数;步骤204,根据查询出的水平数的数量,为所述新增因素设置列或行;步骤206,根据所述查询出的水平数对应的列或行中的水平分配规则,对所述新增因素的列或行进行填充。
通过该技术方案,实现了新增因素的水平的合理填充,使之按照其他因素的水平的分配规则,可以保证覆盖率较高而重复率较低,完成了正交表的扩展,有效地利用了软件测试系统的处理器和内存等计算资源,且不需重新生成正交表,因此不会影响软件测试系统的工作效率。具体地,可根据正交表的格式来调用绘制工具进行列(或行)扩展,以及读取水平分配规则并填充到列中。上述步骤可以通过不同的处理器单元来实现,也可以集成到同一处理器单元上。
在上述技术方案中,优选地,所述步骤202包括:判断所述新增因素的水平数是否大于所述原有因素的最大水平数,并在判断结果为否时,查询大于或等于所述新增因素的水平数的水平数,在判断结果为是时,查询乘积大于或等于所述新增因素的水平数的多个水平数。
通过该技术方案,由于取得多个水平数会导致多次的查询,会影响软件测试系统的效率,通过本方案可以判断出何时需要将取得多个水平数,既保证软件测试系统的顺利工作,又保证了软件测试系统的效率,而且水判断条件简单,方便实现本方案。
在上述技术方案中,优选地,所述步骤202还包括:在判断结果为否时,在查询出第一个大于或等于所述新增因素的水平数的水平数时,停止查询,在判断结果为是时,在查询出第一组乘积大于或等于所述新增因素的水平数的多个水平数时,停止查询。
通过该技术方案,只查找第一个或第一组可用的水平数后,便可以确定用于进行填充正交表的水平规则,不进行后续查询可以节省时间,提高正交表的生成效率,也即提高了软件测试系统的工作效率。
在上述技术方案中,优选地,所述步骤202还包括:在判断结果为否时,优先查询等于所述新增因素的水平数的水平数,在判断结果为是时,优先查询乘积等于所述新增因素的水平数的多个水平数。
通过该技术方案,可以在保证测试覆盖率较高的情况下,提高测试资源的利用效率,不会浪费资源进行无用的测试。
在上述技术方案中,优选地,所述步骤202还包括:设置查询规则,并按所述查询规则对所述原有因素的水平数进行查询。
通过该技术方案,可通过设置一定的规则,提高查找的效率,或实现查询结果的多样化,以保证正交表覆盖率高而重复率低,即保证软件测试系统的资源利用效率高,不会用于过多的重复性测试计算。
通过以上技术方案,可以实现一种正交表扩展装置、一种软件测试系统和一种正交表扩展方法,可以避免重新生成新的正交表,同时可以保证在正交表追加的水平具有一定的分配规则,可以使覆盖率、重复率都满足用户的要求,保证软件测试系统的计算资源能够合理使用,不会被用于重复计算,并能保证如软件测试系统的测试效率。
附图说明
图1是根据本发明的一个实施例的正交表扩展装置的框图;
图2是根据本发明的一个实施例的正交表扩展方法的流程图;
图3是根据本发明的一个实施例的正交表扩展方法的流程图;
图4是根据本发明的一个实施例的正交表扩展方法的流程图。
具体实施方式
为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明并不限于下面公开的具体实施例的限制。
图1是根据本发明的一个实施例的正交表扩展装置的框图。
如图1所示,本发明提供一种正交表扩展装置100,包括:查询单元102,从原有因素的水平数中,查询大于或等于新增因素的水平数的水平数,或乘积大于或等于所述新增因素的水平数的多个水平数;行列设置单元104,根据查询出的水平数的数量,为所述新增因素设置列或行;填充单元106,根据所述查询出的水平数对应的列或行中的水平分配规则,对所述新增因素的列或行进行填充。
通过该技术方案,实现了新增因素的水平的合理填充,使之按照其他因素的水平的分配规则,可以保证覆盖率较高而重复率较低,完成了正交表的扩展,有效地利用了软件测试系统的处理器和内存等计算资源,且不需重新生成正交表,因此不会影响软件测试系统的工作效率。具体地,可根据正交表的格式来调用绘制工具进行列(或行)扩展,以及读取水平分配规则并填充到列中。上述单元可以通过不同的处理器单元来实现,也可以集成到同一处理器单元上。
在上述技术方案中,所述查询单元102判断所述新增因素的水平数是否大于所述原有因素的最大水平数,并在判断结果为否时,查询大于或等于所述新增因素的水平数的水平数,在判断结果为是时,查询乘积大于或等于所述新增因素的水平数的多个水平数。
通过该技术方案,由于取得多个水平数会导致多次的查询,会影响软件测试系统的效率,通过本方案可以判断出何时需要将取得多个水平数,既保证软件测试系统的顺利工作,又保证了软件测试系统的效率,而且判断条件简单,方便实现本方案。
在上述技术方案中,所述查询单元102在判断结果为否时,在查询出第一个大于或等于所述新增因素的水平数的水平数时,停止查询,在判断结果为是时,在查询出第一组乘积大于或等于所述新增因素的水平数的多个水平数时,停止查询。
通过该技术方案,只查找第一个或第一组可用的水平数后,便可以确定用于进行填充正交表的水平规则,不进行后续查询可以节省时间,提高正交表的生成效率,也即提高了软件测试系统的工作效率。
在上述技术方案中,所述查询单元102在判断结果为否时,优先查询等于所述新增因素的水平数的水平数,在判断结果为是时,优先查询乘积等于所述新增因素的水平数的多个水平数。
通过该技术方案,可以在保证测试覆盖率较高的情况下,提高测试资源的利用效率,不会浪费资源进行无用的测试。
在上述技术方案中,所述查询单元102设置查询规则,并按所述查询规则对所述原有因素的水平数进行查询。
通过该技术方案,可通过设置一定的规则,提高查找的效率,或实现查询结果的多样化,以保证正交表覆盖率高而重复率低,即保证软件测试系统的资源利用效率高,不会用于过多的重复性测试计算。
本发明还提供一种软件测试系统,包括:如上所述的正交表扩展装置100。通过该技术方案,有效地利用了处理器和内存等计算资源,且不需重新生成正交表,因此不会影响软件测试系统的工作效率。
图2是根据本发明的一个实施例的正交表扩展方法的流程图。
如图2所示,本发明还提供一种正交表扩展方法,包括:步骤202,从原有因素的水平数中,查询大于或等于新增因素的水平数的水平数,或乘积大于或等于所述新增因素的水平数的多个水平数;步骤204,根据查询出的水平数的数量,为所述新增因素设置列或行;步骤206,根据所述查询出的水平数对应的列或行中的水平分配规则,对所述新增因素的列或行进行填充。
通过该技术方案,实现了新增因素的水平的合理填充,使之按照其他因素的水平的分配规则,可以保证覆盖率较高而重复率较低,完成了正交表的扩展,有效地利用了软件测试系统的处理器和内存等计算资源,且不需重新生成正交表,因此不会影响软件测试系统的工作效率。具体地,可根据正交表的格式来调用绘制工具进行列(或行)扩展,以及读取水平分配规则并填充到列中。上述步骤可以通过不同的处理器单元来实现,也可以集成到同一处理器单元上。
在上述技术方案中,所述步骤202包括:判断所述新增因素的水平数是否大于所述原有因素的最大水平数,并在判断结果为否时,查询大于或等于所述新增因素的水平数的水平数,在判断结果为是时,查询乘积大于或等于所述新增因素的水平数的多个水平数。
通过该技术方案,由于取得多个水平数会导致多次的查询,会影响软件测试系统的效率,通过本方案可以判断出何时需要将取得多个水平数,既保证软件测试系统的顺利工作,又保证了软件测试系统的效率,而且判断条件简单,方便实现本方案。
在上述技术方案中,所述步骤202还包括:在判断结果为否时,在查询出第一个大于或等于所述新增因素的水平数的水平数时,停止查询,在判断结果为是时,在查询出第一组乘积大于或等于所述新增因素的水平数的多个水平数时,停止查询。
通过该技术方案,只查找第一个或第一组可用的水平数后,便可以确定用于进行填充正交表的水平规则,不进行后续查询可以节省时间,提高正交表的生成效率,也即提高了软件测试系统的工作效率。
在上述技术方案中,所述步骤202还包括:在判断结果为否时,优先查询等于所述新增因素的水平数的水平数,在判断结果为是时,优先查询乘积等于所述新增因素的水平数的多个水平数。
通过该技术方案,可以在保证测试覆盖率较高的情况下,提高测试资源的利用效率,不会浪费资源进行无用的测试。
在上述技术方案中,所述步骤202还包括:设置查询规则,并按所述查询规则对所述原有因素的水平数进行查询。
通过该技术方案,可通过设置一定的规则,提高查找的效率,或实现查询结果的多样化,以保证正交表覆盖率高而重复率低,即保证软件测试系统的资源利用效率高,不会用于过多的重复性测试计算。
以下详细说明本发明的技术方案。
在正交表有新增因素,且新增因素的水平数未超出原有任一因素的水平数的情况时,如图3所示,技术方案的主要步骤:
步骤302,打开已存在的正交表;
步骤304,在最后一列追加新增的因素、水平数;
步骤306,在正交表中查找具有与新增因素相同(也可以是大于)的水平数的第一个因素;
步骤308,新增因素适用查找到的相同水平数的因素的水平分配规则。
后续新增的因素和水平以此类推。
以下面的表格为例:
L16(4^4×2^3)正交表:
  因素No  1  2  3  4  5  6  7  水平数  4  4  4  4  2  2  2  实验1  1  1  1  1  1  1  1  2  1  2  2  2  1  2  2  3  1  3  3  3  2  1  2  4  1  4  4  4  2  2  1  5  2  1  2  3  2  2  1  6  2  2  1  4  2  1  2  7  2  3  4  1  1  2  2  8  2  4  3  2  1  1  1  9  3  1  3  4  1  2  2  10  3  2  4  3  1  1  1  11  3  3  1  2  2  2  1  12  3  4  2  1  2  1  2  13  4  1  4  2  2  1  2  14  4  2  3  1  2  2  1  15  4  3  2  4  1  1  1  16  4  4  1  3  1  2  2
  因素No.  1  2  3  4  5  6  7  水平数  4  4  4  4  2  2  2  水平1  1  1  1  1  1  1  1  水平2  2  2  2  2  2  2  2  水平3  3  3  3  3  ‑  ‑  ‑  水平4  4  4  4  4  ‑  ‑  ‑
以上表格中可容纳的因素为7个,所有因素具有的最大水平数为4个,当有新增加的因素,使得总的因素数超出7个时,可在第7列后新增到第8列;该因素的水平为4个时,可套用第一列的分配规则;如果第9个因素也是4个水平时,可接着套用第二列的分配规则;第10、11列的因素如果也是4个水平,可依次套用3、4列的分配规则,以此类推。如果第12列的因素是2个水平时,套用第5列的分配规则,方法同前。
调整后的正交表可以参照下图:
  因素No.  1  2  3  4  5  6  7  8  9  10  11  12  水平数  4  4  4  4  2  2  2  4  4  4  4  2  实验1  1  1  1  1  1  1  1  1  1  1  1  1  2  1  2  2  2  1  2  2  1  2  2  2  1  3  1  3  3  3  2  1  2  1  3  3  3  2  4  1  4  4  4  2  2  1  1  4  4  4  2  5  2  1  2  3  2  2  1  2  1  2  3  2  6  2  2  1  4  2  1  2  2  2  1  4  2  7  2  3  4  1  1  2  2  2  3  4  1  1  8  2  4  3  2  1  1  1  2  4  3  2  1  9  3  1  3  4  1  2  2  3  1  3  4  1  10  3  2  4  3  1  1  1  3  2  4  3  1  11  3  3  1  2  2  2  1  3  3  1  2  2  12  3  4  2  1  2  1  2  3  4  2  1  2  13  4  1  4  2  2  1  2  4  1  4  2  2  14  4  2  3  1  2  2  1  4  2  3  1  2  15  4  3  2  4  1  1  1  4  3  2  4  1  16  4  4  1  3  1  2  2  4  4  1  3  1
  因素No.  1  2  3  4  5  6  7  8  9  10  11  12  水平数  4  4  4  4  2  2  2  4  4  4  4  2  水平1  1  1  1  1  1  1  1  1  1  1  1  1  水平2  2  2  2  2  2  2  2  2  2  2  2  2  水平3  3  3  3  3  ‑  ‑ ‑  3  3  3  3  ‑  水平4  4  4  4  4  ‑  ‑ ‑  4  4  4  4  ‑
在正交表有新增因素,水平数超出原有任一因素的水平数的情况时,如图4所示,技术方案的主要步骤:
步骤402,打开已存在的正交表;
步骤404,查询乘积等于(也可是大于)的多个原有因素的水平数;
步骤406,增加多个列,以用于追加新增的因素、水平数;
步骤408,新的多个列中,适用查找到的多个水平数对应的多个列的水平分配规则。
以下面的表格为例:
L16(4^4×2^3)正交表:
  因素No.  1  2  3  4  5  6  7  水平数  4  4  4  4  2  2  2  实验1  1  1  1  1  1  1  1  2  1  2  2  2  1  2  2  3  1  3  3  3  2  1  2  4  1  4  4  4  2  2  1  5  2  1  2  3  2  2  1  6  2  2  1  4  2  1  2  7  2  3  4  1  1  2  2  8  2  4  3  2  1  1  1  9  3  1  3  4  1  2  2  10  3  2  4  3  1  1  1  11  3  3  1  2  2  2  1  12  3  4  2  1  2  1  2  13  4  1  4  2  2  1  2  14  4  2  3  1  2  2  1  15  4  3  2  4  1  1  1  16  4  4  1  3  1  2  2
  因素No.  1  2  3  4  5  6  7  水平数  4  4  4  4  2  2  2  水平1  1  1  1  1  1  1  1  水平2  2  2  2  2  2  2  2  水平3  3  3  3  3  ‑ ‑  水平4  4  4  4  4  ‑ ‑
新增因素8,水平数有8个,已超出原正交表中最大的水平数4,此时,从以上表中获取乘积为8有两种水平数:4和2,可以为新增因素8正交表中设置为两列:每列分别为4个水平和2个水平,填充到新增加的列中。
调整后的正交表可以参照下图:
  因素No.  1  2  3  4  5  6  7  8‑1  8‑2  水平数  4  4  4  4  2  2  2  4  2  实验1  1  1  1  1  1  1  1  1  1  2  1  2  2  2  1  2  2  1  1  3  1  3  3  3  2  1  2  1  2  4  1  4  4  4  2  2  1  1  2  5  2  1  2  3  2  2  1  2  2  6  2  2  1  4  2  1  2  2  2  7  2  3  4  1  1  2  2  2  1  8  2  4  3  2  1  1  1  2  1  9  3  1  3  4  1  2  2  3  1  10  3  2  4  3  1  1  1  3  1  11  3  3  1  2  2  2  1  3  2  12  3  4  2  1  2  1  2  3  2  13  4  1  4  2  2  1  2  4  2  14  4  2  3  1  2  2  1  4  2  15  4  3  2  4  1  1  1  4  1  16  4  4  1  3  1  2  2  4  1
  因素No.  1  2  3  4  5  6  7  8‑1  8‑2  水平数  4  4  4  4  2  2  2  4  2  水平1  1  1  1  1  1  1  1  1  1  水平2  2  2  2  2  2  2  2  2  2  水平3  3  3  3  3  ‑  ‑  ‑  3  ‑  水平4  4  4  4  4  ‑  ‑  ‑  4  ‑
从上表中可以延伸算出因素8的水平分布图如下:(说明:1和1组合交叉为A作为一个水平;1和2组合交叉为B作为一个水平,以此类推。)
  水平  1  2  1  A  B  2  C  D  3  E  F  4  G  H
根据因素8的水平分布,测试正交表第8因素时,8‑1和8‑2的执行要参照水平分布图执行:比如上述表中,8‑1列与8‑2列的1和1组合,1和2组合,2和1组合,2和2组合,3和1组合,3和2组合,4和1组合,4和2组合。1和1组合取因素8的水平分布图的A,1和2组合取B,2和1组合取C,2和2组合取D,3和1组合取E,3和2组合取F,4和1组合取G,4和2组合取H。只有采取这样的方法,才能真正达到合理的测试覆盖率。
而上述产生的因素8的水平分布图也要保存起来,方便测试执行。为了查找方便,可以在相应表间建立链接,或者直接将生成的水平分布放在对应的列下方,举例,可以在8‑1列和8‑2列下方放入以下内容:1和1组合对应A,1和2组合对应B,2和1组合对应C,2和2组合对应D,3和1组合对应E,3和2组合对应F,4和1组合对应G,4和2组合对应H。
综上所述,可以实现一种正交表扩展装置、一种软件测试系统和一种正交表扩展方法,在于在已生成的正交表中进行扩展增加新来的因素水平,新增加的因素从原有的与水平数相同的第一列因素开始继承其规则,第1、2、3列依次继承,追加到正交表最右侧。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

正交表扩展装置、软件测试系统和正交表扩展方法.pdf_第1页
第1页 / 共18页
正交表扩展装置、软件测试系统和正交表扩展方法.pdf_第2页
第2页 / 共18页
正交表扩展装置、软件测试系统和正交表扩展方法.pdf_第3页
第3页 / 共18页
点击查看更多>>
资源描述

《正交表扩展装置、软件测试系统和正交表扩展方法.pdf》由会员分享,可在线阅读,更多相关《正交表扩展装置、软件测试系统和正交表扩展方法.pdf(18页珍藏版)》请在专利查询网上搜索。

1、(10)申请公布号 CN 103176893 A(43)申请公布日 2013.06.26CN103176893A*CN103176893A*(21)申请号 201110431766.1(22)申请日 2011.12.21G06F 11/36(2006.01)(71)申请人方正国际软件(北京)有限公司地址 100080 北京市海淀区北四环西路52号方正国际大厦18层(72)发明人唐晓东 杜旭明 任丽丽(74)专利代理机构北京友联知识产权代理事务所(普通合伙) 11343代理人尚志峰 汪海屏(54) 发明名称正交表扩展装置、软件测试系统和正交表扩展方法(57) 摘要本发明提供一种正交表扩展装置、一。

2、种软件测试系统和一种正交表扩展方法,其中,正交表扩展装置,包括:查询单元,从原有因素的水平数中,查询大于或等于新增因素的水平数的水平数,或乘积大于或等于所述新增因素的水平数的多个水平数;行列设置单元,根据查询出的水平数的数量,为所述新增因素设置列或行;填充单元,根据所述查询出的水平数对应的列或行中的水平分配规则,对所述新增因素的列或行进行填充。通过该技术方案,实现了新增因素的水平的合理填充,可以保证覆盖率较高而重复率较低,有效地利用了软件测试系统的处理器和内存等计算资源,且不需重新生成正交表,因此不会影响软件测试系统的工作效率。(51)Int.Cl.权利要求书2页 说明书12页 附图3页(19。

3、)中华人民共和国国家知识产权局(12)发明专利申请权利要求书2页 说明书12页 附图3页(10)申请公布号 CN 103176893 ACN 103176893 A1/2页21.一种正交表扩展装置,其特征在于,包括:查询单元,从原有因素的水平数中,查询大于或等于新增因素的水平数的水平数,或乘积大于或等于所述新增因素的水平数的多个水平数;行列设置单元,根据查询出的水平数的数量,为所述新增因素设置列或行;填充单元,根据所述查询出的水平数对应的列或行中的水平分配规则,对所述新增因素的列或行进行填充。2.根据权利要求1所述的正交表扩展装置,其特征在于,所述查询单元判断所述新增因素的水平数是否大于所述原。

4、有因素的最大水平数,并在判断结果为否时,查询大于或等于所述新增因素的水平数的水平数,在判断结果为是时,查询乘积大于或等于所述新增因素的水平数的多个水平数。3.根据权利要求2所述的正交表扩展装置,其特征在于,所述查询单元在判断结果为否时,在查询出第一个大于或等于所述新增因素的水平数的水平数时,停止查询,在判断结果为是时,在查询出第一组乘积大于或等于所述新增因素的水平数的多个水平数时,停止查询。4.根据权利要求3所述的正交表扩展装置,其特征在于,所述查询单元在判断结果为否时,优先查询等于所述新增因素的水平数的水平数,在判断结果为是时,优先查询乘积等于所述新增因素的水平数的多个水平数。5.根据权利要。

5、求1至4中任一项所述的正交表扩展装置,其特征在于,所述查询单元设置查询规则,并按所述查询规则对所述原有因素的水平数进行查询。6.一种软件测试系统,其特征在于,包括:如权利要求1至5中任一项所述的正交表扩展装置。7.一种正交表扩展方法,其特征在于,包括:步骤202,从原有因素的水平数中,查询大于或等于新增因素的水平数的水平数,或乘积大于或等于所述新增因素的水平数的多个水平数;步骤204,根据查询出的水平数的数量,为所述新增因素设置列或行;步骤206,根据所述查询出的水平数对应的列或行中的水平分配规则,对所述新增因素的列或行进行填充。8.根据权利要求7所述的正交表扩展方法,其特征在于,所述步骤20。

6、2包括:判断所述新增因素的水平数是否大于所述原有因素的最大水平数,并在判断结果为否时,查询大于或等于所述新增因素的水平数的水平数,在判断结果为是时,查询乘积大于或等于所述新增因素的水平数的多个水平数。9.根据权利要求8所述的正交表扩展方法,其特征在于,所述步骤202还包括:在判断结果为否时,在查询出第一个大于或等于所述新增因素的水平数的水平数时,停止查询,在判断结果为是时,在查询出第一组乘积大于或等于所述新增因素的水平数的多个水平数时,停止查询。10.根据权利要求9所述的正交表扩展方法,其特征在于,所述步骤202还包括:在判断结果为否时,优先查询等于所述新增因素的水平数的水平数,在判断结果为是。

7、时,优先查询乘积等于所述新增因素的水平数的多个水平数。11.根据权利要求7至10中任一项所述的正交表扩展方法,其特征在于,所述步骤202权 利 要 求 书CN 103176893 A2/2页3还包括:设置查询规则,并按所述查询规则对所述原有因素的水平数进行查询。权 利 要 求 书CN 103176893 A1/12页4正交表扩展装置、 软件测试系统和正交表扩展方法技术领域0001 本发明涉及软件测试领域,具体而言,涉及一种正交表扩展装置、一种软件测试系统和一种正交表扩展方法。背景技术0002 软件的正常运行可能受到众多因素的影响,并且因素之间的相互作用也可能会对软件的正常运行产生影响。因此在测。

8、试时不仅要考虑所有对软件产生影响的可能因素,而且对存在于这些因素之间的相互作用,就需要设计一个测试用例集,对系统因素的各种组合情况进行充分覆盖。软件测试中经常会碰到多个输入参数,每个参数多个取值的情况,假设所测试的某个软件单元中有6个输入参数,每个参数可以取4个值,如果做全面测试,需要设计4096个测试用例,这很不现实。测试是一个重要且代价昂贵的工作,如何在给定的有限的时间和资源设计较少的测试用例来获取最大的测试效果。0003 因此在实际测试工作中我们应用到了正交法,既能有效地减少测试用例数目,又能够保证测试结果不受太大的影响,从而避免了测试的片面性和盲目性,以下对本发明涉及到几个概念进行解释。

9、。0004 正交法:正交实验法就是利用排列整齐的表正交表来对试验进行整体设计、综合比较、统计分析,实现通过少数的实验次数找到较好的生产条件,以达到最高生产工艺效果。正交表能够在因素变化范围内均衡抽样,使每次试验都具有较强的代表性,由于正交表具备均衡分散的特点,保证了全面实验的某些要求,这些试验往往能够较好或更好的达到实验的目的。0005 因素:指作试验研究过程的自变量,常常是造成试验指标按某种规律发生变化的那些原因。0006 水平:指试验中因素所处的具体状态或情况,又称为等级。下表水平0007 1、水平2、水平3等表示因素的不同水平。0008 如下表:以验证一个输出为例0009 因素No. 输。

10、出介质 选择数据 Email 电话水平数 3 2 2 2水平1 硬盘 1条 不变更 不变更水平2 CD 多条 变更 变更水平3 DVD0010 以上表中,输出介质、选择数据、Email、电话为因素;硬盘、CD和DVD是输出介质的水平;输出介质有3个水平、选择数据有2个水平、Email有2个水平等;比如在试验时输出说 明 书CN 103176893 A2/12页5介质可能选择1条数据输出,硬盘作为输出存储的介质、输出前不对Email、电话做变更。0011 但是,在实际应用中我们会遇到如下的难题:用户需求的频繁变更、新功能的后期追加等因素影响,正交表需要跟随维护进行扩展,而正交表是在版本初期就已形。

11、成,水平、因素已经固定下来,可能会导致新增加的水平、因素无法添加,数据较多时可能需要重新生成正交表,为测试系统的处理器和内存造成压力,调整后还有可能需要进行重复性的测试步骤。0012 目前在使用正交表设计测试用例时,由于正交法是根据现有的功能点列出所有的水平和因素,套用正交法公式,而产生正交表,当有新功能或需求变更时,新的水平、因素产生,当正交表中已不能容纳新的水平、因素添加时,在未使用新的方案前,用到两种方法来处理:0013 1、在有新功能或变更时,水平、因素数增加,是直接在已有的正交表后追加,但是没有什么规则,由此会产生两种遗漏:一种是覆盖率达不到,因为未进行科学的计算而任意添加上的水平,。

12、可能会导致测试覆盖率达不到最大值;另一种是重复率,因为会由于功能的变动而在其后任意的追加,导致无法科学的维护,可能会有冗余的测试数据在其中,从而引起重复率较高的测试,浪费了处理器和内存等计算资源,降低了测试的效率。0014 2、按照新的水平、因素重新计算生成新的正交表,这种方法总结只适用于较为稳定的项目,对于频繁更新维护的状态下不适合,另外也较适用于小规模项目,因为有很多大型项目牵扯到的测试点会非常多,水平、因素数有的甚至上百上千条,如果由于需求变更,而重新生成正交表会占用大量时间和计算资源,显得不太现实,并且需要进行大量的维护。0015 因此,需要一种新的用于扩展正交表的技术方案,可以避免重。

13、新生成新的正交表,同时可以保证在正交表追加的水平具有一定的分配规则,可以使覆盖率、重复率都满足用户的要求,保证软件测试系统的计算资源能够合理使用,不会被用于重复计算,并能保证如软件测试系统的测试效率。发明内容0016 本发明所要解决的技术问题在于,提供一种新的用于扩展正交表的技术方案,可以避免重新生成新的正交表,同时可以保证在正交表追加的水平具有一定的分配规则,可以使覆盖率、重复率都满足用户的要求,保证软件测试系统的计算资源能够合理使用,不会被用于重复计算,并能保证如软件测试系统的测试效率。0017 有鉴于此,本发明提供一种正交表扩展装置,包括:查询单元,从原有因素的水平数中,查询大于或等于新。

14、增因素的水平数的水平数,或乘积大于或等于所述新增因素的水平数的多个水平数;行列设置单元,根据查询出的水平数的数量,为所述新增因素设置列或行;填充单元,根据所述查询出的水平数对应的列或行中的水平分配规则,对所述新增因素的列或行进行填充。0018 通过该技术方案,实现了新增因素的水平的合理填充,使之按照其他因素的水平的分配规则,可以保证覆盖率较高而重复率较低,完成了正交表的扩展,有效地利用了软件测试系统的处理器和内存等计算资源,且不需重新生成正交表,因此不会影响软件测试系统的工作效率。具体地,可根据正交表的格式来调用绘制工具进行列(或行)扩展,以及读取水平分配规则并填充到列中。上述单元可以通过不同。

15、的处理器单元来实现,也可以集成说 明 书CN 103176893 A3/12页6到同一处理器单元上。0019 在上述技术方案中,优选地,所述查询单元判断所述新增因素的水平数是否大于所述原有因素的最大水平数,并在判断结果为否时,查询大于或等于所述新增因素的水平数的水平数,在判断结果为是时,查询乘积大于或等于所述新增因素的水平数的多个水平数。0020 通过该技术方案,由于取得多个水平数会导致多次的查询,会影响软件测试系统的效率,通过本方案可以判断出何时需要将取得多个水平数,既保证软件测试系统的顺利工作,又保证了软件测试系统的效率,而且水判断条件简单,方便实现本方案。0021 在上述技术方案中,优选。

16、地,所述查询单元在判断结果为否时,在查询出第一个大于或等于所述新增因素的水平数的水平数时,停止查询,在判断结果为是时,在查询出第一组乘积大于或等于所述新增因素的水平数的多个水平数时,停止查询。0022 通过该技术方案,只查找第一个或第一组可用的水平数后,便可以确定用于进行填充正交表的水平规则,不进行后续查询可以节省时间,提高正交表的生成效率,也即提高了软件测试系统的工作效率。0023 在上述技术方案中,优选地,所述查询单元在判断结果为否时,优先查询等于所述新增因素的水平数的水平数,在判断结果为是时,优先查询乘积等于所述新增因素的水平数的多个水平数。0024 通过该技术方案,可以在保证测试覆盖率。

17、较高的情况下,提高测试资源的利用效率,不会浪费资源进行无用的测试。0025 在上述技术方案中,优选地,所述查询单元设置查询规则,并按所述查询规则对所述原有因素的水平数进行查询。0026 通过该技术方案,可通过设置一定的规则,提高查找的效率,或实现查询结果的多样化,以保证正交表覆盖率高而重复率低,即保证软件测试系统的资源利用效率高,不会用于过多的重复性测试计算。0027 本发明还提供一种软件测试系统,包括:如上所述的正交表扩展装置。通过该技术方案,有效地利用了处理器和内存等计算资源,且不需重新生成正交表,因此不会影响软件测试系统的工作效率。0028 本发明还提供一种正交表扩展方法,包括:步骤20。

18、2,从原有因素的水平数中,查询大于或等于新增因素的水平数的水平数,或乘积大于或等于所述新增因素的水平数的多个水平数;步骤204,根据查询出的水平数的数量,为所述新增因素设置列或行;步骤206,根据所述查询出的水平数对应的列或行中的水平分配规则,对所述新增因素的列或行进行填充。0029 通过该技术方案,实现了新增因素的水平的合理填充,使之按照其他因素的水平的分配规则,可以保证覆盖率较高而重复率较低,完成了正交表的扩展,有效地利用了软件测试系统的处理器和内存等计算资源,且不需重新生成正交表,因此不会影响软件测试系统的工作效率。具体地,可根据正交表的格式来调用绘制工具进行列(或行)扩展,以及读取水平。

19、分配规则并填充到列中。上述步骤可以通过不同的处理器单元来实现,也可以集成到同一处理器单元上。0030 在上述技术方案中,优选地,所述步骤202包括:判断所述新增因素的水平数是否说 明 书CN 103176893 A4/12页7大于所述原有因素的最大水平数,并在判断结果为否时,查询大于或等于所述新增因素的水平数的水平数,在判断结果为是时,查询乘积大于或等于所述新增因素的水平数的多个水平数。0031 通过该技术方案,由于取得多个水平数会导致多次的查询,会影响软件测试系统的效率,通过本方案可以判断出何时需要将取得多个水平数,既保证软件测试系统的顺利工作,又保证了软件测试系统的效率,而且水判断条件简单。

20、,方便实现本方案。0032 在上述技术方案中,优选地,所述步骤202还包括:在判断结果为否时,在查询出第一个大于或等于所述新增因素的水平数的水平数时,停止查询,在判断结果为是时,在查询出第一组乘积大于或等于所述新增因素的水平数的多个水平数时,停止查询。0033 通过该技术方案,只查找第一个或第一组可用的水平数后,便可以确定用于进行填充正交表的水平规则,不进行后续查询可以节省时间,提高正交表的生成效率,也即提高了软件测试系统的工作效率。0034 在上述技术方案中,优选地,所述步骤202还包括:在判断结果为否时,优先查询等于所述新增因素的水平数的水平数,在判断结果为是时,优先查询乘积等于所述新增因。

21、素的水平数的多个水平数。0035 通过该技术方案,可以在保证测试覆盖率较高的情况下,提高测试资源的利用效率,不会浪费资源进行无用的测试。0036 在上述技术方案中,优选地,所述步骤202还包括:设置查询规则,并按所述查询规则对所述原有因素的水平数进行查询。0037 通过该技术方案,可通过设置一定的规则,提高查找的效率,或实现查询结果的多样化,以保证正交表覆盖率高而重复率低,即保证软件测试系统的资源利用效率高,不会用于过多的重复性测试计算。0038 通过以上技术方案,可以实现一种正交表扩展装置、一种软件测试系统和一种正交表扩展方法,可以避免重新生成新的正交表,同时可以保证在正交表追加的水平具有一。

22、定的分配规则,可以使覆盖率、重复率都满足用户的要求,保证软件测试系统的计算资源能够合理使用,不会被用于重复计算,并能保证如软件测试系统的测试效率。附图说明0039 图1是根据本发明的一个实施例的正交表扩展装置的框图;0040 图2是根据本发明的一个实施例的正交表扩展方法的流程图;0041 图3是根据本发明的一个实施例的正交表扩展方法的流程图;0042 图4是根据本发明的一个实施例的正交表扩展方法的流程图。具体实施方式0043 为了能够更清楚地理解本发明的上述目的、特征和优点,下面结合附图和具体实施方式对本发明进行进一步的详细描述。0044 在下面的描述中阐述了很多具体细节以便于充分理解本发明,。

23、但是,本发明还可以采用其他不同于在此描述的其他方式来实施,因此,本发明并不限于下面公开的具体实施例的限制。说 明 书CN 103176893 A5/12页80045 图1是根据本发明的一个实施例的正交表扩展装置的框图。0046 如图1所示,本发明提供一种正交表扩展装置100,包括:查询单元102,从原有因素的水平数中,查询大于或等于新增因素的水平数的水平数,或乘积大于或等于所述新增因素的水平数的多个水平数;行列设置单元104,根据查询出的水平数的数量,为所述新增因素设置列或行;填充单元106,根据所述查询出的水平数对应的列或行中的水平分配规则,对所述新增因素的列或行进行填充。0047 通过该技。

24、术方案,实现了新增因素的水平的合理填充,使之按照其他因素的水平的分配规则,可以保证覆盖率较高而重复率较低,完成了正交表的扩展,有效地利用了软件测试系统的处理器和内存等计算资源,且不需重新生成正交表,因此不会影响软件测试系统的工作效率。具体地,可根据正交表的格式来调用绘制工具进行列(或行)扩展,以及读取水平分配规则并填充到列中。上述单元可以通过不同的处理器单元来实现,也可以集成到同一处理器单元上。0048 在上述技术方案中,所述查询单元102判断所述新增因素的水平数是否大于所述原有因素的最大水平数,并在判断结果为否时,查询大于或等于所述新增因素的水平数的水平数,在判断结果为是时,查询乘积大于或等。

25、于所述新增因素的水平数的多个水平数。0049 通过该技术方案,由于取得多个水平数会导致多次的查询,会影响软件测试系统的效率,通过本方案可以判断出何时需要将取得多个水平数,既保证软件测试系统的顺利工作,又保证了软件测试系统的效率,而且判断条件简单,方便实现本方案。0050 在上述技术方案中,所述查询单元102在判断结果为否时,在查询出第一个大于或等于所述新增因素的水平数的水平数时,停止查询,在判断结果为是时,在查询出第一组乘积大于或等于所述新增因素的水平数的多个水平数时,停止查询。0051 通过该技术方案,只查找第一个或第一组可用的水平数后,便可以确定用于进行填充正交表的水平规则,不进行后续查询。

26、可以节省时间,提高正交表的生成效率,也即提高了软件测试系统的工作效率。0052 在上述技术方案中,所述查询单元102在判断结果为否时,优先查询等于所述新增因素的水平数的水平数,在判断结果为是时,优先查询乘积等于所述新增因素的水平数的多个水平数。0053 通过该技术方案,可以在保证测试覆盖率较高的情况下,提高测试资源的利用效率,不会浪费资源进行无用的测试。0054 在上述技术方案中,所述查询单元102设置查询规则,并按所述查询规则对所述原有因素的水平数进行查询。0055 通过该技术方案,可通过设置一定的规则,提高查找的效率,或实现查询结果的多样化,以保证正交表覆盖率高而重复率低,即保证软件测试系。

27、统的资源利用效率高,不会用于过多的重复性测试计算。0056 本发明还提供一种软件测试系统,包括:如上所述的正交表扩展装置100。通过该技术方案,有效地利用了处理器和内存等计算资源,且不需重新生成正交表,因此不会影响软件测试系统的工作效率。0057 图2是根据本发明的一个实施例的正交表扩展方法的流程图。0058 如图2所示,本发明还提供一种正交表扩展方法,包括:步骤202,从原有因素的说 明 书CN 103176893 A6/12页9水平数中,查询大于或等于新增因素的水平数的水平数,或乘积大于或等于所述新增因素的水平数的多个水平数;步骤204,根据查询出的水平数的数量,为所述新增因素设置列或行;。

28、步骤206,根据所述查询出的水平数对应的列或行中的水平分配规则,对所述新增因素的列或行进行填充。0059 通过该技术方案,实现了新增因素的水平的合理填充,使之按照其他因素的水平的分配规则,可以保证覆盖率较高而重复率较低,完成了正交表的扩展,有效地利用了软件测试系统的处理器和内存等计算资源,且不需重新生成正交表,因此不会影响软件测试系统的工作效率。具体地,可根据正交表的格式来调用绘制工具进行列(或行)扩展,以及读取水平分配规则并填充到列中。上述步骤可以通过不同的处理器单元来实现,也可以集成到同一处理器单元上。0060 在上述技术方案中,所述步骤202包括:判断所述新增因素的水平数是否大于所述原有。

29、因素的最大水平数,并在判断结果为否时,查询大于或等于所述新增因素的水平数的水平数,在判断结果为是时,查询乘积大于或等于所述新增因素的水平数的多个水平数。0061 通过该技术方案,由于取得多个水平数会导致多次的查询,会影响软件测试系统的效率,通过本方案可以判断出何时需要将取得多个水平数,既保证软件测试系统的顺利工作,又保证了软件测试系统的效率,而且判断条件简单,方便实现本方案。0062 在上述技术方案中,所述步骤202还包括:在判断结果为否时,在查询出第一个大于或等于所述新增因素的水平数的水平数时,停止查询,在判断结果为是时,在查询出第一组乘积大于或等于所述新增因素的水平数的多个水平数时,停止查。

30、询。0063 通过该技术方案,只查找第一个或第一组可用的水平数后,便可以确定用于进行填充正交表的水平规则,不进行后续查询可以节省时间,提高正交表的生成效率,也即提高了软件测试系统的工作效率。0064 在上述技术方案中,所述步骤202还包括:在判断结果为否时,优先查询等于所述新增因素的水平数的水平数,在判断结果为是时,优先查询乘积等于所述新增因素的水平数的多个水平数。0065 通过该技术方案,可以在保证测试覆盖率较高的情况下,提高测试资源的利用效率,不会浪费资源进行无用的测试。0066 在上述技术方案中,所述步骤202还包括:设置查询规则,并按所述查询规则对所述原有因素的水平数进行查询。0067。

31、 通过该技术方案,可通过设置一定的规则,提高查找的效率,或实现查询结果的多样化,以保证正交表覆盖率高而重复率低,即保证软件测试系统的资源利用效率高,不会用于过多的重复性测试计算。0068 以下详细说明本发明的技术方案。0069 在正交表有新增因素,且新增因素的水平数未超出原有任一因素的水平数的情况时,如图3所示,技术方案的主要步骤:0070 步骤302,打开已存在的正交表;0071 步骤304,在最后一列追加新增的因素、水平数;0072 步骤306,在正交表中查找具有与新增因素相同(也可以是大于)的水平数的第一个因素;说 明 书CN 103176893 A7/12页100073 步骤308,新。

32、增因素适用查找到的相同水平数的因素的水平分配规则。0074 后续新增的因素和水平以此类推。0075 以下面的表格为例:0076 L16(4423)正交表:0077 因素No 1 2 3 4 5 6 7水平数 4 4 4 4 2 2 2实验1 1 1 1 1 1 1 12 1 2 2 2 1 2 23 1 3 3 3 2 1 24 1 4 4 4 2 2 15 2 1 2 3 2 2 16 2 2 1 4 2 1 27 2 3 4 1 1 2 28 2 4 3 2 1 1 19 3 1 3 4 1 2 210 3 2 4 3 1 1 111 3 3 1 2 2 2 112 3 4 2 1 2 1 213 4 1 4 2 2 1 214 4 2 3 1 2 2 115 4 3 2 4 1 1 116 4 4 1 3 1 2 20078 因素No. 1 2 3 4 5 6 7水平数 4 4 4 4 2 2 2说 明 书CN 103176893 A10。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1