发包联动并发监控自动化测试服务器性能的方法

文档序号:9730021阅读:581来源:国知局
发包联动并发监控自动化测试服务器性能的方法
【技术领域】
[0001]本发明涉及自动化测试领域,尤其涉及一种发包联动并发监控自动化测试服务器性能的方法。
【背景技术】
[0002]目前的自动化测试集成环境可以自动执行测试模块,但不能对服务器性能进行自动监控。当需要进行性能测试时,如果所需基础输入流量数据与历史数据相同,则不存在问题,但如果数据包输入诸如协议,包长,包间隔有改动,则需要首先通过发送一定流量的数据包测试出服务器的性能瓶颈,得到数据后再对自动化测试模块执行长时间不间断压力测试。而针对不同协议,不同包长的数据包,每次都需要测试,增加了很大的工作量,不能实现自动化无人值守。可知,自动化集成环境性能测试在得到测试任务执行测试模块时,首先需要根据目前需要的数据包测试出服务器的最大吞吐量,然后基于吞吐量的数据对测试模块所需输入基础数据进行更改,然后进行长时间不间断性能测试。这样进行的测试的缺点是每次测试床的准备都需要进行人工测试,或者把通常情况的数据作为字典传入,但当测试输入数据条件稍有改动,又需要进行基础数据的测试准备,非常浪费人力和时间。

【发明内容】

[0003]针对现有技术中存在的问题,本发明提供了一种无人值守的发包联动并发监控自动化测试服务器性能的方法。
[0004]本发明采用如下技术方案:
[0005]—种发包联动并发监控自动化测试服务器性能的方法,所述方法包括:
[0006]发包模块与监控服务器模块建立连接,所述监控服务器发送连接消息至所述发包模块;
[0007]所述发包模块按照预设的流量发送数据包至所述监控服务器模块,发送所述数据包完成后,发送一完成消息至所述监控服务器模块;
[0008]所述监控服务器模块处理所述数据包并启动并发监控服务器程序,监控所述监控服务器模块的性能,若所述监控服务器模块的性能尚未达到瓶颈,则所述发包模块继续发送所述数据包;
[0009]当所述监控服务器模块的性能到达瓶颈状态,所述监控服务器模块发送断开连接信息至所述发包模块,所述发包模块断开连接,所述监控服务器记录所述监控服务器模块的性能到达瓶颈状态时所述发包模块发送的数据包的流量,得到自动化测试模块的基础数据。
[0010]优选的,所述方法中,所述发包模块与所述监控服务器模块之间为C/S结构,并且采用socket通信机制。
[0011 ]优选的,所述方法中,所述并发监控服务器程序监控所述监控服务器模块的性能,当所述监控服务器模块的性能未到达瓶颈状态时,所述监控服务器发送发包消息至所述发包模块的等待队列中。
[0012]优选的,所述发包模块处理所述发包消息,所述发包模块按照预设的比率增加所述数据包的流量后,所述发包模块向所述监控服务器模块发送增加流量的所述数据包。
[0013]优选的,所述方法中,所述监控服务器模块性能的参数包括CPU和/或内存和/或硬盘和/或进程的占用率和所述监控服务器模块的瓶颈值。
[0014]优选的,所述方法还包括:
[0015]所述监控服务器模块接收所述数据包后,直接将所述数据包透传至多个系统服务器,每个所述系统服务器均对所述数据包进行处理,当一系统服务器的性能出现瓶颈时,系统信息模块采集该系统服务器的性能参数存入所述监控服务器模块中的列表。
[0016]优选的,所述监控服务器模块采用多进程MAP方法发送所述数据包至多个系统服务器。
[0017]优选的,所述方法中,所述监控服务器模块调用所述列表中的系统服务器的性能参数,得到所述自动化测试模块的基础数据。
[0018]优选的,所述监控服务器将所述监控服务器模块的性能参数,并将所述性能参数写入所述自动化测试模块中,所述自动化测试模块将所述性能参数作为基础数据对被测设备进行测试。
[0019]优选的,所述监控服务器模块将所述系统服务器的性能参数,并将所述性能参数写入所述自动化测试模块中,所述自动化测试模块将所述性能参数作为基础数据对被测设备进行测试。
[0020]本发明的有益效果是:
[0021]本发明能够实现发包控制联动并发实时监控自动化集成测试环境中的多台服务器,在集成自动化测试环境中,服务器承担着发送大量各种协议的数据包到被测设备的任务,该系统会持续不断地增加数据量直到达到服务器设定的系统瓶颈值,本发明可以承担起当数据量已经达到服务器的性能瓶颈时自动记录系统数据以及数据包指标,并自动回传Tag消息到发包模块使之不再增大流量,并将该数据包参数作为基础数据写入该测试模块,在此流量基础上进行24/48/72小时性能测试,这样就实现了无人值守,同时保证了数据的准确性,不会出现由于达到了服务器的瓶颈导致丢包而造成的对被测设备结果的不确定性。
【附图说明】
[0022]图1为本发明发包模块联动监控服务器模块执行网络示意图;
[0023]图2为本发明发包模块与并发实时监控服务器模块间的通信示意图;
[0024]图3为本发明监控服务器模块工作原理图。
【具体实施方式】
[0025]需要说明的是,在不冲突的情况下,下述技术方案,技术特征之间可以相互组合。
[0026]下面结合附图对本发明的【具体实施方式】作进一步的说明:
[0027]本发明通过自动发包联动监控自动化测试集成环境的方法实时监控多服务器的性能,当到达服务器性能瓶颈后将该服务器的性能参数发送到自动化测试模块,自动化测试模块以该性能参数作为基础数据,对被测设备(诸如无线路由器,云服务器等)进行不间断长时间的性能测试,实现了无人值守,对测试床基础数据的采集做到了自动执行。
[0028]实施例一
[0029]本实施例主要提供一种发包模块联动并发实时监控多服务器的性能的方法,这种方法可以使用在自动化测试集成环境中,如图1所示,首先,发包模块能够向监控服务器模块发送数据包,监控服务器模块不处理该数据包并将该数据包透传至各个系统服务器,各个系统服务器能够处理该数据包,这些系统服务器可以是一般的服务器也可以是虚拟服务器,监控服务器模块同时并发对各系统服务器的CPU,内存,硬盘的占用率,进程的占用率做实时监控,将监控结果返回给发包模块,当该监控结果在可控范围内时(此处的可控范围可以理解为尚未达到系统服务器的性能瓶颈),发包模块会按照一定的步长增大数据包量,再次发送数据包至监控服务器模块,监控服务器模块再重复上述动作,重复的次数直至到达设定的服务器的性瓶颈值后,监控服务器模块会发停止信号给发包模块停止发包,同时监控服务器模块将监控结果写入自动化测试模块,监控的结果在后文进行具体的举例,自动化测试模块将该监控结果作为自动化测试模块的基础初始数据应用于服务器对被测设备DUT的测试中,其中被测设备DUT与系统服务器和监控服务器模块同在内网环境中。
[0030]实施例二
[0031]本实施例主要基于实施例一的基础上,对发包模块与监控服务器模块之间的通信方式进行介绍,如图2所示,本实施例中发包模块与监控服务器模块之间可以是C/S结构,采用socket机制实现通信,发包模块会和监控服务器模块建立长连接,发包模块会启动两个线程:一个是监听线程,该线程会一直等待监控服务器模块的连接请求;另一个是任务处理线程,处理任务池中的任务监控服务器模块与发包模块建立连接后,会发送一个指定的Tag消息(连接消息)给发包模块,发包模块的监听线程收到该信号后,会启动一个独立于监听线程的任务处理线程,进行发包(发送数据包),在发送完数据包后,发送一个完成消息给监控服务器模块,监控服务器模块启动监控服务器模块内部的并发监控服务器程序,当未到达监控服务器模块预定的性能瓶颈时,它会继续上一个操作,发送一个tag消息(发包消息),并将该发包消息放在发包模块的队列中等待处理
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1