应用软件性能脚本测试方法与装置制造方法

文档序号:6526881阅读:233来源:国知局
应用软件性能脚本测试方法与装置制造方法
【专利摘要】本发明公开了一种应用软件性能脚本的测试方法与装置,解决了基于RPC的应用软件缺乏现成可用的性能录制工具的问题,所具有的优点包括:基于录制,性能脚本开发效率高,无需代码开发性能脚本,原来需要大量开发人员参与,现在只需几个测试人员即可;简单易用,无需专业开发人员即可完成性能脚本开发和测试执行;准确性:完整准确地录制下RPC请求数据和时序,完整准确的播放,跟产品运行完全一致,杜绝代码开发的不一致性;强大的脚本二次开发支持:可支持参数化;与测试执行工具集成:可生成LoadRunner脚本。
【专利说明】应用软件性能脚本测试方法与装置
【技术领域】
[0001]本发明涉及软件测试【技术领域】,特别是涉及一种应用软件性能脚本的测试方法与
装直。
【背景技术】
[0002]应用软件的性能测试过程一般分为性能脚本编写和性能测试执行与结果分析。测试执行和结果分析一般采用现有的工具,如LoadRunner, Robot等。
[0003]性能脚本的编写一般分为2种情况:
[0004]工具录制,比如LoadRunner, Robot等工具,提供了 Web界面录制,适合
[0005]于Web 软件。
[0006]性能脚本代码,工具无法录制的,自己开发性能脚本代码,开发人员根据
[0007]业务功能编写特定语言的代码,比如Java。
[0008]上述性能脚本编写的两种情况存在以下缺点。
[0009]工具录制,只能支持Web界面的录制,对非Web界面录制支持不好,因此
[0010]只适合于Web软件,无法满足基于RPC通讯的应用软件的录制。
[0011]性能脚本代码,缺点包括:
[0012]a)开发效率低,工作量大,需要大量开发人员参与。
[0013]b)性能脚本容易失真,开发出来的代码和真正运行的代码不一致,因为数据准备和调用逻辑复杂。
[0014]c)功能覆盖率低,容易遗漏。
[0015]Client/Server架构下,Client和Server之间的通讯一般是基于RPC,通讯协议是自制的。Brower/Server架构下,Brower和Server之间通讯一般是基于HTTP,通讯协议是标准的。

【发明内容】

[0016]基于上述情况,本发明提出了一种应用软件性能脚本的测试方法与装置,以适合于Client/Server架构下基于RPC通讯的应用软件测试。为此,本发明采用了以下方案。
[0017]一种应用软件性能脚本测试方法,包括步骤:
[0018]提供录制界面;
[0019]通过所述录制界面接收,捕获应用软件的RPC通讯数据;
[0020]接收性能脚本录制结束命令,将捕获的RPC通讯数据保存为预定格式的性能脚本;
[0021]对保存的性能脚本进行参数化处理;
[0022]生成性能测试工具支持的脚本;
[0023]提供性能脚本执行器,由性能测试工具支持的脚本调用该执行器,重复执行参数化后的性能脚本。[0024]一种应用软件性能脚本测试装置,包括
[0025]录制工具,用于提供录制界面,并通过所述录制界面接收性能脚本录制命令,录制应用软件界面,捕获应用软件的RPC通讯数据,并接收性能脚本录制结束命令,将捕获的RPC通讯数据保存为预定格式的性能脚本;
[0026]性能脚本二次开发模块,用于对保存的性能脚本进行参数化处理;
[0027]测试脚本生成模块,用于生成性能测试工具支持的脚本;
[0028]性能脚本执行模块,用于利用性能测试工具支持的脚本调用性能脚本执行器,重复执行参数化后的性能脚本。
[0029]本发明应用软件性能脚本的测试方法与装置的有益效果如下:
[0030]1.解决了基于RPC的应用软件缺乏现成可用的性能录制工具的问题;
[0031]2.基于录制,性能脚本开发效率高,无需代码开发性能脚本,原来需要大量开发人员参与,现在只需几个测试人员即可;
[0032]3.简单易用,无需专业开发人员即可完成性能脚本开发和测试执行;
[0033]4.准确性:完整准确地录制下RPC请求数据和时序,完整准确的播放,跟产品运行完全一致,杜绝代码开发的不一致性;
[0034]5.强大的脚本二次开发支持:可支持参数化;
[0035]6.与测试执行工具集成:可生成LoadRunner脚本。
【专利附图】

【附图说明】
[0036]图1为本发明应用软件性能脚本测试方法的流程示意图;
[0037]图2为录制界面的一个实施例;
[0038]图3为本发明应用软件性能脚本测试装置的结构示意图。
【具体实施方式】
[0039]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步的详细说明。应当理解,此处所描述的【具体实施方式】仅仅用以解释本发明,并不限定本发明的保护范围。
[0040]本发明应用软件性能脚本的测试方法,如图1所示,包括步骤:
[0041]步骤slOl、提供录制界面;
[0042]步骤S102、通过所述录制界面接收性能脚本录制命令,捕获应用软件的RPC通讯数据;
[0043]步骤sl03、接收性能脚本录制结束命令,将捕获的RPC通讯数据保存为预定格式的性能脚本;
[0044]步骤S104、对保存的性能脚本进行参数化处理;
[0045]步骤s 105、生成性能测试工具支持的脚本;
[0046]步骤S106、提供性能脚本执行器,由性能测试工具支持的脚本调用该执行器,重复执行参数化后的性能脚本。
[0047]为方便描述,上述基于RPC的性能脚本,称为RScript,以区分性能测试工具支持的脚本,如LoadRunner脚本。[0048]以下分5个部分详细描述本方法。
[0049]1.1性能脚本格式RScript
[0050]性能脚本由一个script文件和若干xml文件组成,其中,script文件由一系列命令调用序列组成,xml文件是rpc请求数据,作为script中命令调用的参数。
[0051]Script文件格式的一个实施例如下:
[0052]
【权利要求】
1.一种应用软件性能脚本测试方法,其特征在于,包括步骤: 提供录制界面; 通过所述录制界面接收性能脚本录制命令,捕获应用软件的RPC通讯数据; 接收性能脚本录制结束命令,将捕获的RPC通讯数据保存为预定格式的性能脚本; 对保存的性能脚本进行参数化处理; 生成性能测试工具支持的脚本; 提供性能脚本执行器,由性能测试工具支持的脚本调用该执行器,重复执行参数化后的性能脚本。
2.根据权利要求1所述的应用软件性能脚本测试方法,其特征在于, 所述性能脚本包括一个script文本文件和若干RPC请求对象XML文件。
3.根据权利要求1或2所述的应用软件性能脚本测试方法,其特征在于, 所述步骤捕获应用软件的RPC通讯数据具体为:在RPC应用层注入拦截代码,在应用软件向服务器发送二进制请求数据时,将该请求数据捕获下来。
4.根据权利要求1或2所述的应用软件性能脚本测试方法,其特征在于, 所述性能测试工具为LoadRunner工具,性能测试工具支持的脚本为LoadRunner脚本。
5.根据权利要求1或2所述`的应用软件性能脚本测试方法,其特征在于, 性能脚本执行器实现的功能包括系统相关功能、脚本相关功能和RPC调用相关功能, 所述系统相关功能包括: 设置客户端运行环境,该客户端运行环境包括客户端依赖程序和服务端访问路径; 系统登录和身份认证; 所述脚本相关功能包括: 将性能脚本解析为命令调用序列; 将命令调用序列中的命令文本解析为命令执行动作; 将RPC请求对象XML文件反序列化成二进制请求对象,供RPC远程调用使用; 根据解析出的命令动作调用相应的功能, RPC调用相关功能,是模拟真实运行的应用软件,将录制下来的XML反序列化成二进制请求对象,向RPC服务端发送数据,并截获返回数据。
6.一种应用软件性能脚本测试装置,其特征在于,包括 录制工具,用于提供录制界面,并通过该界面接收性能脚本录制命令,捕获应用软件的RPC通讯数据,并接收性能脚本录制结束命令,将捕获的RPC通讯数据保存为预定格式的性能脚本; 性能脚本二次开发模块,用于对保存的性能脚本进行参数化处理; 测试脚本生成模块,用于生成性能测试工具支持的脚本; 性能脚本执行模块,用于提供性能脚本执行器,由性能测试工具支持的脚本调用该执行器,重复执行参数化后的性能脚本。
7.根据权利要求6所述的应用软件性能脚本测试装置,其特征在于, 所述性能脚本包括一个script文本文件和若干RPC请求对象XML文件。
8.根据权利要求6或7所述的应用软件性能脚本测试装置,其特征在于, 所述录制工具捕获应用软件的RPC通讯数据的具体做法为:在RPC应用层注入拦截代码,在应用软件向服务器发送二进制请求数据时,将该请求数据捕获下来。
9.根据权利要求6或7所述的应用软件性能脚本测试装置,其特征在于, 所述性能测试工具为LoadRunner工具,性能测试工具支持的脚本为LoadRunner脚本。
10.根据权利要求6或7所述的应用软件性能脚本测试装置,其特征在于, 性能脚本执行器实现 的功能包括系统相关功能、脚本相关功能和RPC调用相关功能, 所述系统相关功能包括: 设置客户端运行环境,该客户端运行环境包括客户端依赖程序和服务端访问路径; 系统登录和身份认证, 所述脚本相关功能包括: 将性能脚本解析为命令调用序列; 将命令调用序列中的命令文本解析为命令执行动作; 将RPC请求对象XML文件反序列化成二进制请求对象,供RPC远程调用使用; 根据解析出的命令动作调用相应的功能, RPC调用相关功能,是模拟真实运行的应用软件,将录制下来的XML反序列化成二进制请求对象,向RPC服务端发送数据,并截获返回数据。
【文档编号】G06F11/36GK103729294SQ201310750538
【公开日】2014年4月16日 申请日期:2013年12月30日 优先权日:2013年12月30日
【发明者】林志贤 申请人:金蝶软件(中国)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1