一种协议一致性测试系统内部数据存储方法及系统的制作方法

文档序号:6504418阅读:115来源:国知局
一种协议一致性测试系统内部数据存储方法及系统的制作方法
【专利摘要】本发明公开了一种协议一致性测试系统内部数据存储方法,该方法利用数据存储模块向数据抄送模块发起抄送请求,进而触发数据抄送模块将协议栈仿真模块中产生的数据封装后抄送到数据存储模块,并以当前正在执行的用例作为文件名存储在指定路径下。此方法相对于直接在内存里存储数据然后再往硬盘上写,可以有效防止因数据量太大而引起内存溢出的情况,也能预防用例运行时因突然断电而导致数据未被保存的情况,以单个用例为单位的存储方式方便开发人员观察用例的执行情况,正确定位系统内部错误和修复系统漏洞,从而保证系统的稳定性和准确性。
【专利说明】一种协议一致性测试系统内部数据存储方法及系统
【技术领域】
[0001]本发明涉及终端协议一致性测试系统,尤其涉及到一种TD-LTE终端协议一致性测试系统内部数据的处理和存储方法。
【背景技术】
[0002]TD-LTE网络试点在我国的成功搭建,加快了 TD-LTE的商业化步伐,相信在不久的将来 TD-LTE 即能实现商用。目前,包括 Qualcomm、Infineon、LG、Samsung、ST-Ericsson、4M Wireless等在内的公司已经宣称即将推出LTE终端设备平台,因此,要确保各个公司的TD-LTE终端(芯片)在入网后能够实现互连互通,就必须得在终端进入市场前进行一致性测试,所以TD-LTE终端协议一致性测试系统的开发显得尤为重要。
[0003]TD-LTE终端协议一致性测试系统主要分为两大部分:主控模块和协议栈仿真模块。主控模块主要提供人机交互界面,完成用例管理和TTCN脚本编解码功能。协议栈仿真模块主要完成高层协议实体的模拟和高层协议栈的调度功能。在TD-LTE终端协议一致性测试系统运行过程中,协议栈模块会产生大量的配置原语和空口协议信令数据,这些数据客观的反映了系统内部事件触发和系统运行状况,因此获得这些数据对监测协议栈仿真模块运行状况以及定位系统内部错误和漏洞有着极其重要的作用。
[0004]现有终端协议一致性测试系统保存协议栈模块数据的方式为:在用例执行时,先将协议栈模块产生的数据存放在缓存区中,等用例全部执行完毕后,再将缓存区中的数据写入硬盘指定路径下的某个文件里。这种方式的缺点有:(1)执行用例产生的数据量太大时,系统会出现因为缓存溢出而崩溃的现象。(2)多个用例同时执行时最后的结果都保存在同一个LOG文件中,因此无法区分LOG中记录的数据由哪个用例产生,导致开发人员想要分析多个用例的LOG时就必须以用例为单位单独执行以获得每个用例的LOG文件,而这样的操作非常繁琐且不够智能。(3)由于LOG文件将所有的原语数据、空口信令数据和相关打印信息都保存了下来,所以当研发人员需要关注某种原语、空口协议信令或者是某个重要的打印信息就需要在这个LOG文件中逐一寻找,操作显得比较繁琐。(4)在用例执行时,如果突然断电缓存区中的LOG文件就无法保存下来,给压力测试带来困难。由于压力测试通常需要一至两天时间连续的执行用例,中途断电将导致LOG文件无法保存。因此,现有系统对内部数据的处理方式存在不少漏洞,并且存储方式非智能,导致研发人员对内部数据的查找效率较低。

【发明内容】

[0005]本发明所要解决的技术问题是提供一种数据存储方法,克服现有系统在数据存储时稳定性低,以及存储非智能的问题。
[0006]为解决上述技术问题,本发明提供了一种数据存储方法,该方法包括:
[0007]在协议一致性测试系统的主控模块中加入数据存储模块,在协议仿真模块中加入数据抄送模块。由这两个模块完成协议一致性测试系统运行时内部数据的抄送和保存。[0008]所述的数据存储模块向数据抄送模块发起抄送请求,告知数据抄送模块数据抄送端口和所需抄送的消息类型。
[0009]所述数据抄送模块在收到数据存储模块发送的登录请求后,将协议栈仿真模块运行过程中生成的数据和开发人员加入的打印信息封装成指定的格式,向数据存储模块指定的端口抄送。
[0010]数据存储模块从指定的端口获得数据抄送模块抄送的数据,并保存在主控模块指定路径下的记录(record)数据文件中,同时,数据存储模块根据用例结束标识和用例信息,以用例编号为文件名单独生成record文件。
[0011]所述的数据存储模块分为存储交互模块和存储控制模块。所述的数据抄送模块分为抄送交互模块,抄送控制模块,数据封装模块和抄送模块。
[0012]所述的存储交互模块和抄送交互模块完成数据存储模块和数据抄送模块的交互。存储交互模块通过向数据抄送交互模块发送登录请求,将所需获得消息的数据类型、抄送端口等信息告知数据抄送模块,以控制数据抄送模块的抄送端口号和抄送数据的类型(如:原语类型,调试信息等),抄送交互模块则对数据存储交互模块的请求进行应答。
[0013]所述的抄送控制模块根据数据存储交互模块申请的消息类型选择需要抄送的数据。数据封装模块按照需要将原始数据封装为规定的数据格式。抄送模块则负责将封装完成后的数据抄送到数据存储模块指定的端口。
[0014]所述的数据存储控制模块存储控制模块负责从指定端口获得数据,将其写入指定路径下的record文件中,其中record文件以用例为单位创建并以当前执行的用例名作为文件名。
[0015]所述向数据存储模块指定端口抄送进一步包括:用例开始执行时,数据存储模块从主控模块上获取执行用例的用例名,在硬盘指定路径下创建数据存储文集,用例执行后,数据抄送模块打开对应消息类型的抄送开关,对需要抄送的消息加上消息头后进行封装,然后往指定端口抄送;数据存储控制模块分析收到消息的消息头,如果格式符合,将其写入数据存储文集中,继续监听该指定端口。用例执行完成后,数据存储控制模块从主控模块得到用例执行结束信息和下一个用例的用例名,存储控制模块关闭用例名数据存储文集,并创建下一个用例的用例名数据存储文集,继续监听上述指定端口,并将符合条件的数据写入下一个用例的用例名数据存储文集中。
[0016]本发明还提出一种协议一致性测试系统内部数据存储系统,包括:主控模块、数据存储模块、数据抄送模块,其中,数据存储模块包括文件存储控制模块和存储交互模块,数据抄送模块包括抄送交互模块、抄送控制模块、数据封装模块和抄送模块,数据存储模块向数据抄送模块发起抄送请求,告知数据抄送端口和所需抄送的消息类型;数据抄送模块在收到数据存储模块发送的登录请求后,将协议栈仿真模块运行过程中生成的数据和开发人员加入的打印信息封装成指定的格式,向数据存储模块指定端口抄送;数据存储模块从指定端口获得数据,并保存在主控模块指定路径下的记录record数据文件中,数据存储模块根据用例结束标识和用例信息,以用例编号作为文件名生成record文件。
[0017]本发明将数据以用例为单位直接存入硬盘中,避免了因数据量太大而导致的缓存溢出,同时这种以用例为单位存储数据的方式给研发人员提供了更大的灵活性,使得协议一致性内部数据的存储更加智能。克服现有技术在终端一致性测试过程中出现异常情况时无法定位的问题,用于处理和存储系统运行过程中内部生成的参数、触发的事件,以及产生的协议数据。
【专利附图】

【附图说明】
[0018]图1为本发明数据处理和存储整体模块框图;
[0019]图2为本发明存储交互模块和抄送交互模块交互流程图;
[0020]图3为本发明数据存储模块处理总体流程图;
[0021]图4为本发明数据抄送模块数据处理流程框图。
【具体实施方式】
[0022]为了进一步详细体现本发明的技术方案、实施目的和技术优点,下面将结合本发明的附图,对本发明的实施方案和操作过程进行更加详细、完整的描述,但本发明的保护范围不限于下述的实施例。
[0023]本发明针对现有终端一致性测试系统在连续执行多个用例时,内部产生的数据都存入同一个文件,不能根据需要选择所需的消息类型进行存储,导致存入大量的冗余消息,同时由于数据先存入缓存再写入硬盘文件中而出现因数据量太大导致的内存溢出,最终将使系统崩溃。本发明提出一种新的存储方式,将系统运行时产生的数据以用例为单位存储在硬盘上指定路径下的文本文件中,并且能够根据研发人员的需求选择数据进行保存,实现了存储智能化,防止了缓存溢出,保证了系统稳定性。
[0024]图1为本发明的整体模块流程图,其中在主控模块中嵌入的数据存储模块包括文件存储控制模块和存储交互模块,嵌入协议栈仿真模块的数据抄送模块包括抄送交互模块、抄送控制模块、数据封装模块和抄送模块。在协议一致性测试系统的主控模块中包括数据存储模块,在协议仿真模块中包括数据抄送模块,数据存储模块向数据抄送模块发起抄送请求,告知数据抄送端口和所需抄送的消息类型;数据抄送模块在收到数据存储模块发送的登录请求后,将协议栈仿真模块运行过程中生成的数据和开发人员加入的打印信息封装成指定的格式,向数据存储模块指定端口抄送;数据存储模块从指定端口获得数据,并保存在主控模块指定路径下的记录record数据文件中,数据存储模块根据用例结束标识和用例信息,以用例编号作为文件名生成record文件。
[0025]如图2所示为本发明存储交互模块和抄送交互模块交互流程图,数据存储交互模块和抄送存储交互模块确定传送端口号,选择所需抄送消息的类型。
[0026](I)在系统执行用例之前,抄送交互模块处于监听状态,监听预先绑定的端口(此处假定为5000端口)信息。
[0027](2)数据存储交互模块通过5000端口向抄送交互模块发起登录请求,并在请求消息体中携带协议栈数据需要抄送到的端口号(此处假定为5002端口)。
[0028](3)抄送交互模块在5000端口收到存储交互模块发送的登录请求以后,立即给存储交互模块发送一个登录响应。
[0029](4)在收到登录响应以后,数据存储交互模块会继续向抄送交互模块发送过滤请求。
[0030]所述过滤,将协议仿真模块运行时产生的数据分为调试信息和协议栈数据,通过给这两类信息各自分配一个消息类型号作为开关来控制是否抄送此类消息。如:1对应调试信息,2对应协议栈数据,3对应调试信息和协议栈数据,当存储交互模块发送I时,抄送模块就会在协议栈仿真模块运行时,将调试信息封装后抄送到5002端口。所述调试信息为嵌入到协议仿真模块代码中的打印信息,所述协议栈数据是协议栈仿真模块运行时内部产生的参数和数据,包括各个系统协议栈之间的交互原语、空口信令信息,执行用例触发事件信息等。
[0031 ] (5)在收到过滤请求以后,抄送交互模块记录下所需抄送数据的类型编号。
[0032]用例开始执行时,数据存储模块在硬盘指定路径下以用例名为文件名创建数据存储文集,数据抄送模块负责对协议栈仿真模块运行过程中产生的数据进行封装和抄送。
[0033]如图3所示,用例开始执行时,数据存储模块从主控模块上获取执行用例的用例名(如:7.1.1.1),在硬盘指定路径下(如D:\test)创建用例名数据存储文集(7.1.1.1.txt)。用例执行后,数据抄送模块根据抄送交互模块保存的开关,打开对应消息类型的抄送开关,并按照指定格式对需要抄送的消息加上消息头后进行封装,然后往相应端口(如指定5002端口)抄送。数据抄送模块数据处理流程如图4所示。
[0034]数据存储控制模块监听指定端口,将从指定端口获得的数据写入所创建的文件中。数据存储控制模块监听5002端口,分析收到消息的消息头,如果格式不符合就丢弃,否则将其写入用例名数据存储文集7.1.1.1.txt文件中,然后继续监听5002端口。
[0035]当前用例执行后,数据存储控制模块向主控模块获取用例结束信息和即将执行的用例名。用例执行完成后,数据存储控制模块从主控模块得到用例执行结束信息和下一个用例的用例名(如8.1.1.1),此时存储控制模块关闭7.1.1.l.txt,并在D:\test路径下创建下一个用例的用例名数据存储文集8.1.1.1.txt,继续监听上述指定端口 5002端口并将符合条件的数据写入8.1.1.1.txt文件中。
[0036]所有用例执行完成后,数据抄送模块停止抄送,数据存储模块停止写入数据。
[0037]当所有的用例执行完成后,数据抄送模块停止抄送,数据存储交互模块退出登录。此时,在D:\text里保存了用例执行时协议栈模块参数的完整数据。
[0038]本实施例将数据以用例为单位直接存入硬盘中,避免了因数据量太大而导致的缓存溢出。
【权利要求】
1.一种协议一致性测试系统内部数据存储方法,其特征在于,在协议一致性测试系统的主控模块中加入数据存储模块,在协议仿真模块中加入数据抄送模块,所述的数据存储模块向数据抄送模块发起抄送请求,告知数据抄送端口和所需抄送的消息类型;所述数据抄送模块在收到数据存储模块发送的登录请求后,将协议栈仿真模块运行过程中生成的数据和开发人员加入的打印信息封装成指定的格式,向数据存储模块指定端口抄送;数据存储模块从指定端口获得数据,并保存在主控模块指定路径下的记录record数据文件中,数据存储模块根据用例结束标识和用例信息,以用例编号作为文件名生成record文件。
2.根据权利要求1所述的数据存储方法,其特征在于,数据存储模块包括存储交互模块,数据抄送模块包括抄送交互模块,存储交互模块通过向数据抄送交互模块发送登录请求,将所需获得消息数据类型、抄送端口信息告知数据抄送模块,以控制数据抄送模块的抄送端口号和抄送数据类型,抄送交互模块则对数据存储交互模块的请求进行应答。
3.根据权利要求1所述的数据存储方法,其特征在于,数据抄送模块通过存储交互模块申请的消息类型选择需要抄送的数据,将原始数据封装为规定的数据格式,抄送模块负责将封装完成后的数据抄送到数据存储模块指定的端口。
4.根据权利要求1所述的数据存储方法,其特征在于,所述向数据存储模块指定端口抄送进一步包括:用例开始执行时,数据存储模块从主控模块上获取执行用例的用例名,在硬盘指定路径下创建数据存储文集,用例执行后,数据抄送模块打开对应消息类型的抄送开关,对需要抄送的消息加上消息头后进行封装,然后往指定端口抄送;数据存储控制模块分析收到消息的消息头,如果格式符合,将其写入用例的用例名数据存储文集中,继续监听该指定端口 ;用例执行完成后,数据存储控制模块从主控模块得到用例执行结束信息和下一个用例的用例名,存储控制模块关闭用例名数据存储文集,并创建下一个用例的用例名数据存储文集,继续监听上述指定端口,并将符合条件的数据写入下一个用例的用例名数据存储文集中。
5.一种协议一致性测试系统内部数据存储系统,其特征在于,包括:主控模块、数据存储模块、数据抄送模块,其中,数据存储模块包括文件存储控制模块和存储交互模块,数据抄送模块包括抄送交互模块、抄送控制模块、数据封装模块和抄送模块,数据存储模块向数据抄送模块发起抄送请求,告知数据抄送端口和所需抄送的消息类型;数据抄送模块在收到数据存储模块发送的登录请求后,将协议栈仿真模块运行过程中生成的数据和开发人员加入的打印信息封装成指定的格式,向数据存储模块指定端口抄送;数据存储模块从指定端口获得数据,并保存在主控模块指定路径下的记录record数据文件中,数据存储模块根据用例结束标识和用例信息,以用例编号作为文件名生成record文件。
6.根据权利要求5所述的系统,其特征在于,存储交互模块通过向数据抄送交互模块发送登录请求,将所需获得消息数据类型、抄送端口信息告知数据抄送模块,以控制数据抄送模块的抄送端口号和抄送数据类型,抄送交互模块则对数据存储交互模块的请求进行应答。
7.根据权利要求5所述的系统,其特征在于,数据抄送模块通过存储交互模块申请的消息类型选择需要抄送的数据,将原始数据封装为规定的数据格式,抄送模块负责将封装完成后的数据抄送到数据存储模块指定的端口。
【文档编号】G06F3/06GK103457996SQ201310244063
【公开日】2013年12月18日 申请日期:2013年6月19日 优先权日:2013年6月19日
【发明者】程方, 蒲伟, 张治中, 武忠亚, 李艳, 杨理想, 李鹏飞, 李丹凤, 罗江, 孟凡莉, 张冠杰 申请人:重庆邮电大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1