【技术实现步骤摘要】
本专利技术涉及计算机服务器领域,特别是一种服务器性能自动化测试方法及系统及装置。
技术介绍
随着互联网络技术的飞速发展,服务器的应用越来越广泛,人们对服务器的服务质量的要求也越来越高。于是出现了各式各样的自动化测试平台,可以用于对服务器的运行状况进行测试。一般来说,服务器产品在上线时,需要进行几轮的性能和压力测试,用于测试服务器承受负载等方面的能力。当连接到服务器的用户达到一定数量时,往往会出现登陆困难、同步缓慢、频繁断连的问题,这些是由于服务器硬件质量、软件架构、网络带宽所引起的。通过对服务器进行性能和压力测试,可以确定以及发现一个服务器保持正常运行的上线人数以及其它方面的缺陷,从而更好地完善产品以及提供运营品质。在现有技术中,服务器自动化测试平台中存在着一些问题,如占用资源高、采用C语言编写脚本过长、布置较为复杂等。因此提供一种简单方便,对资源的消耗较少,易于使用性能测试方法,是本领域技术人员急需解决的问题。
技术实现思路
本专利技术的目的在于克服现有技术问题的缺陷,提供一种服务器性能自动化测试方法及系统及装置。根据本专利技术的一个方面,提供了一种服务器性能自动化测试方法,包括如下步骤:A:编写测试案例;B:本地调试;C:设置分发程序;D:服务器集群测试并通过本地Web端实时显示;E:生成测试报告并发送邮件。优选地,所述测试案例根据需求采用python脚本编写。r>优选地,所述本地调试包括利用单用户程序本地调试和/或利用分发程序本地调试。优选地,所述设置分发程序包括通过配置文件或者Web端控制并发用户数和执行时间。优选地,所述步骤E还包括自动从测试服务器收集执行和异常日志到本地。根据本专利技术的另一方面,提供了一种服务器性能自动化测试系统,包括:编程模块,配置为编写测试案例;本地调试模块,配置为进行本地调试;设置模块,配置为设置分发程序;服务器集群测试模块,配置为进行服务器集群测试并通过本地Web端实时显示;处理模块,配置为生成测试报告并发送邮件。优选地,所述测试案例根据需求采用python脚本编写。优选地,所述本地调试包括利用单用户程序本地调试和/或利用分发程序本地调试。优选地,所述设置分发程序包括通过配置文件或者Web端控制并发用户数和执行时间。优选地,所述处理模块还配置为自动从测试服务器收集执行和异常日志到本地。根据本专利技术的另一方面,提供了一种服务器性能自动化测试装置,所述装置包括:存储器,用于存储程序;处理器,用于运行所述程序执行以下步骤:A:编写测试案例;B:本地调试;C:设置分发程序;D:服务器集群测试并通过本地Web端实时显示;E:生成测试报告并发送邮件。本专利技术的有益效果是:本专利技术采用python脚本语言编写测试案例,简单方便,而且对资源的消耗较少,该工具是一个非常易于使用、分布式的性能测试工具,可以十分方便地对网站和游戏的服务器进行性能和压力的测试。本专利技术可以轻松地模拟数千万的用户去对服务器进行测试,并且可以在web端实时看到测试情况(总共多少用户、成功多少请求、失败多少请求等等),这可以帮助在正式上线之前,发现系统的缺陷以及瓶颈,从而更好地完善产品。附图说明下面结合附图和实例对本专利技术作进一步说明:图1是根据本专利技术的一种服务器性能自动化测试方法流程图;图2是根据本专利技术的一种服务器性能自动化测试系统模块图;图3是根据本专利技术的一种服务器性能自动化测试装置模块图。具体实施方式本专利技术提供一种服务器性能自动化测试方法及系统及装置,用于模拟数千万用户去对服务器进行测试。根据本专利技术的一个实施例,提供一种服务器性能自动化测试方法,包括步骤:A:编写测试案例;本专利技术的测试案例根据需求采用python脚本进行编写,可以编写代码如下:ClassGunMasterTasks(TaskSet):defon_start(self):self.byte_to_short=struct.Struct(‘<H’)self.sock=socket.socket(socket.AF_INET,socket.SOCK_STREAM)self.sock.settimeout(5)start_time=time.time()try:ret=self.sock.connect(SERVER_ADDRESS)printretexceptsocket.timeoutasmsg:request_failure.fire(request_type=‘socket’,name=‘connect’,response_time=time.time()–start_time,exception=msg)self.sock=Nonereturnexceptsocket.errorasmsg:request_failure.fire(request_type=‘socket’,name=‘connect’,response_time=time.time()–start_time,exception=msg)self.sock=Nonereturnelse:request_success.fire(request_type=‘socket’,name=‘connect’,response_time=time.time()–start_time,exception=msg)taskdefmsg_send_recv(self):ifself.sockisNone:returnstart_time=time.time()try:send_msg=‘testlog:’%uuid.uuid4().hex[:4]self.sock.send(self.byte_to_short.pack(len(send_msg)))self.sock.send(send_msg)exceptsocket.timeoutasmsg:request_failure.fire(request_type=‘socket’,name=‘send’,response_time=time.time()–start_time,exception=msg)使用场景:游戏服务端网络库的性能测试。B:本地调试;本地调试包括利用单用户程序本地调试和/或利用分发程序本地调本文档来自技高网...
【技术保护点】
一种服务器性能自动化测试方法,其特征在于,包括步骤:A:编写测试案例;B:本地调试;C:设置分发程序;D:服务器集群测试并通过本地Web端实时显示;E:生成测试报告并发送邮件。
【技术特征摘要】
1.一种服务器性能自动化测试方法,其特征在于,包括步骤:
A:编写测试案例;
B:本地调试;
C:设置分发程序;
D:服务器集群测试并通过本地Web端实时显示;
E:生成测试报告并发送邮件。
2.根据权利要求1所述的一种服务器性能自动化测试方法,其特征在于,所述测试案例
根据需求采用python脚本进行编写。
3.根据权利要求1所述的一种服务器性能自动化测试方法,其特征在于,所述本地调试
包括利用单用户程序本地调试和/或利用分发程序本地调试。
4.根据权利要求1所述的一种服务器性能自动化测试方法,其特征在于,所述设置分发
程序包括通过配置文件或者Web端控制并发用户数和执行时间。
5.根据权利要求1所述的一种服务器性能自动化测试方法,其特征在于,所述步骤E还
包括自动从测试服务器收集执行和异常日志到本地。
6.一种服务器性能自动化测试系统,其特征在于,包括:
编程模块,配置为编写测试案例;
本地调试模块,配置为...
【专利技术属性】
技术研发人员:周诚,倪波,文聪,
申请(专利权)人:珠海金山网络游戏科技有限公司,成都西山居互动娱乐科技有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。