系统的测试方法和装置的制造方法

文档序号:8322101阅读:270来源:国知局
系统的测试方法和装置的制造方法
【技术领域】
[0001]本发明涉及系统测试领域,具体来说,涉及一种系统的测试方法和装置。
【背景技术】
[0002]在网络安全领域,随着计算机网络技术的迅速发展,对于系统是否具备快速识别并处理海量报文的能力显得尤为必要,然而现在的系统工程庞大,需要识别的报文不仅格式众多而且算法复杂,但是,对于目前的系统的前期测试方法来说,在对被测系统进行测试时,所用的测试激励(测试报文)不仅类型单一而且结构简单,这样,测试激励就不能够全面覆盖被测系统的各个接口,这样就不容易测试出系统的各个接口可能存在的问题,使得被测系统在功能和性能上均都得不到很好保证,那么被测系统一旦上板调试出现问题,就需要对问题再定位,再修改,再重新进行综合测试,这样下来,不仅会浪费大量的时间,还会影响整个系统的开发效率。
[0003]此外,由于所用的测试激励不仅数量少,而且不真实,即测试激励是一种处于理论状态下的测试报文,并不能模拟出真实的系统使用场景,例如在复杂交错的网络环境中,各式各样的隧道报文层层叠加,而这样的报文连许多发报机都不能构造出来,这样就会为系统测试带来诸多不便;
[0004]此外,如在特殊极端的应用场景下,如果系统的应对能力不能提前预知,就不能够对这种极端情况提出预先的解决方案,相应的,对于系统的性能测试更是达不到良好效果,具体来说,例如大量的真实流突发到系统的某一个端口,这将会对系统的性能造成极大的影响,而由于不能提前预知这个问题,也就没有对其进行纠正解决的相应方案,那么在实际应用中这将会造成很大的损失。
[0005]针对相关技术中的上述问题,目前尚未提出有效的解决方案。

【发明内容】

[0006]针对相关技术中的问题,本发明提出一种系统的测试方法和装置,能够模拟各种各样可变的网络真实报文,提高测试报文的多样性和数量;通过系统中实现的算法来实现被测系统的预期测试结果存储,提高了系统开发效率。
[0007]本发明的技术方案是这样实现的:
[0008]根据本发明的一个方面,提供了一种系统的测试方法。
[0009]该测试方法包括:
[0010]基于预定的规范对网络通信协议的参数信息进行随机配置;
[0011]根据预定的第一算法对配置后的网络通信协议所产生的报文进行计算,得到预期测试结果并存储;
[0012]由被测系统对报文进行处理,得到处理结果;
[0013]将处理结果和目标测试结果进行对比,根据对比结果确定被测系统的测试情况。
[0014]其中,在基于预定的规范对网络通信协议的参数信息进行随机配置时,可根据预定的算法提取网络通信协议的参数信息中的关键信息;并基于预定的规范对关键信息进行随机配置。
[0015]优选的,可基于预定的规范对开放式系统互联参考模型(OSI)中至少一层网络通信协议的参数信息进行随机配置。
[0016]其中,在根据预定的第二算法对配置后的网络通信协议所产生的报文进行计算时,可根据不同的预定子算法对配置后的不同层的网络通信协议所产生的不同子报文分别进行计算,得到对应被测系统的不同测试接口的预期测试子结果并存储。
[0017]相应的,在由被测系统对报文进行处理时,可由被测系统的不同测试接口分别对相应的子报文进行处理,从而得到对应不同测试接口的处理子结果。
[0018]相应的,在将处理结果和目标测试结果进行对比,并根据对比结果确定被测系统的测试情况时,可将对应相同测试接口的处理子结果与预期测试子结果进行对比,从而根据对比结果来确定该测试接口的测试情况。
[0019]优选的,当多个测试接口存在业务联系时,如果该多个测试接口中至少一个测试接口的对比结果为处理子结果和预期测试子结果不同,那么将停止对与该测试接口有业务联系的一个或多个测试接口的测试。
[0020]根据本发明的另一方面,提供了一种系统的测试装置。
[0021]该测试装置包括:
[0022]配置模块,用于基于预定的规范对网络通信协议的参数信息进行随机配置;
[0023]存储模块,用于根据预定的第一算法对配置后的网络通信协议所产生的报文进行计算,得到预期测试结果并存储;
[0024]处理模块,用于由被测系统对报文进行处理,得到处理结果;
[0025]对比模块,用于将处理结果和目标测试结果进行对比,根据对比结果确定被测系统的测试情况。
[0026]其中,该配置模块可包括:
[0027]提取模块,用于根据预定的第二算法提取网络通信协议的参数信息中的关键信息;
[0028]配置子模块,用于基于预定的规范对关键信息进行随机配置。
[0029]优选的,该配置模块可进一步用于基于预定的规范对开放式系统互联参考模型OSI中至少一层网络通信协议的参数信息进行随机配置。
[0030]本发明通过模拟各种各样可变的网络真实报文,提高了测试报文的多样性和数量;通过系统中实现的算法来实现被测系统的预期测试结果存储,提高了系统开发效率。
【附图说明】
[0031]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0032]图1是根据本发明实施例的系统的测试方法的流程图;
[0033]图2是根据本发明实施例的测试报文和预期测试结果的构造示意图;
[0034]图3是根据现有技术的TCP报头结构的示意图;
[0035]图4是根据现有技术的IPv4报头结构的示意图;
[0036]图5是根据本发明实施例的对被测系统的测试流程图;
[0037]图6是根据本发明实施例的系统的测试装置的框图。
【具体实施方式】
[0038]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。
[0039]根据本发明的实施例,提供了一种系统的测试方法。
[0040]如图1所示,根据本发明实施例的测试方法包括:
[0041]步骤S101,基于预定的规范对网络通信协议的参数信息进行随机配置;
[0042]步骤S103,根据预定的第一算法对配置后的网络通信协议所产生的报文进行计算,得到预期测试结果并存储;
[0043]步骤S105,由被测系统对报文进行处理,得到处理结果;
[0044]步骤S107,将处理结果和目标测试结果进行对比,根据对比结果确定被测系统的测试情况。
[0045]为了更好的理解本发明的上述技术方案,下面结合一具体实施例来对本发明的上述技术方案进行详细阐述。
[0046]为了能够使被测系统的测试场景更加符合真实的系统使用场景(即复杂交错的网络环境),在本实施例中可对OSI中的各层协议分别进行参数配置,从而构造出任何嵌套式的复杂报文,具体的,参照图2所示的报文构造与预期结果预存的流程图可以看出,在本实施例中,通过对OSI中的应用层、传输层(例如TCP)、网络层(例如IP)、数据链路层协议的参数信息或者说是协议的属性在符合规范格式的情况下分别进行随机赋值(随机配置),这样经过随机配置后的各层协议所产生的子报文就会构成一个测试激励(即测试报文),具体的,从图2可以看出,DataSrcBuf是原始报文缓存区,其中,配置后的每层协议在产生子报文时,均会将其存储在DataSrcBuf中,那么当OSI中所有层的协议子报文均产生后就会形成测试激励并存储在Global Buffer中;同时,每层协议还均会将其产生的子报文发送至下一层协议处理,从而使得配置后的下一层协议能够基于从上一层协议处接收的子报文再产生本层协议的子报文;同时,本发明还会对每层协议所产生子报文利用预定的子算法对其分别进行计算,从而得到对应被测系统的不同测试接口的预期测试子结果,并每层协议的预期测试子结果存储在对应的预期结果模块中,这样每个预期结果模块均存储着与之对应的协议层的预期测试子结果;其中,前面提到的被测系统的不同测试接口也是与不同的协议层一一对应的;同时,每个预期结果模块中的预期测试子结果均会存储在DataExpBuf,即预期结果缓冲区中;并且,当OSI中所有层的协议均进行了预期测试子结果的存储后,系统还会将预期测试结果(即所有预期测试子结果的结合)存储在GlobalBuffer中,这样就实现了测试激励的在不同协议层的层层构造,同时还预存了测试激励在被测系统的不同测试接口(即不同协议层)的预期测试子结果。
[0047]其中,在一个优选的实施例中,为了避免在构造复杂且嵌套的报文时所存在的数据冗余问题,在基于预定的规范格式对网络通信协议的参数信息进行随机配置时,可根据预定的第二算法来对不同层的网络通信协议的参数信息中的关键信息进行提取;并基于预定的规范对关键信息进行随机配置。
[0048]具体的,以传输层协议(例如TCP)来说,图3示出了 TCP报文头部的结构图,其中该结构图中示出了 TCP报文头部的多个属性(参数),那么为了不对系统性能造成影响,造成不必要的配置,可利用哈希(hash)算法从TCP头部中提取源端口和目的端口这些关键信息,然后对这些关键信息进行随机配置,即随机赋值,当然是在符合规范格式的情况下随
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1