一种Jmeter平台的接口验证方法、系统、计算机和存储介质技术方案

技术编号:27655779 阅读:24 留言:0更新日期:2021-03-12 14:17
本申请属于计算机技术领域,具体涉及一种Jmeter平台的接口验证方法、系统、计算机和存储介质,包括:通过获取服务器端的响应内容以及数据库查询结果;将所述服务器端的响应内容转换成第一结果集,将所述数据库查询结果转换成第二结果集;并抽取第一结果集中的要比对的结果集与所述第二结果集进行比对;若比对结果不一致,则断言失败;若比对结果一致,则断言成功。不同的服务端返回的数据集是多种多样的,本系统可以智能判断并转换,使用者不需要了解复杂的逻辑,只需要一次调用就可以完成复杂的断言,大大提高了接口自动化的效率和质量。

【技术实现步骤摘要】
一种Jmeter平台的接口验证方法、系统、计算机和存储介质
本申请属于计算机
,具体涉及一种Jmeter平台的接口验证方法及系统。
技术介绍
在众多的接口自动化的工具中,使用Jmeter做接口自动化的朋友不在少数,在使用的过程中难免都会遇到一个问题:如何验证这个接口执行成功了?而assertion(断言)在软件开发中是一种常用的调试方式,很多开发语言中都支持这种机制。Jmeter也提供这样一个元件,叫做断言(Assertion),它的作用和loadrunner中的检查点类似,用于检查测试中得到的响应数据等是否符合预期,用以保证性能测试过程中的数据交互与预期一致。在Jmeter中,使用的比较多的是响应断言和BeanShell断言,而这两种都存在一定弊端:1)Jmeter本身提供的响应断言比较初级,无法判断接口的返回与数据库中存储的数据是否一致;2)BeanShell断言需要使用者有一定的编程基础,而且可读性比较差,增加了团队其他成员的维护成本。因此,目前需要本领域技术人员迫切解决的一个技术问题就是:如何在BeanShell断言中用简单的一行代码来对比接口的响应数据和数据库查询的数据集,以减轻使用者的负担,提高接口自动化的质量。
技术实现思路
为至少在一定程度上克服相关技术中,解决在BeanShell断言中用简单的一行代码来对比接口的响应数据和数据库查询的数据集,以减轻使用者的负担,提高接口自动化的质量问题,本申请提供以下技术方案,第一方面,一种Jmeter平台的接口验证方法,其特征在于,包括:获取服务器端的响应内容以及数据库查询结果;将所述服务器端的响应内容转换成第一结果集,将所述数据库查询结果转换成第二结果集;抽取第一结果集中的要比对的结果集与所述第二结果集进行比对;若比对结果不一致,则断言失败;若比对结果一致,则断言成功。进一步地,抽取所述第一结果集中的要比对的结果集与所述第二结果集进行比对,包括:比对所述第一结果集中的要比对的结果集与所述第二结果集的记录总数;若比对结果不一致,则断言失败;若比对结果一致,则断言成功。进一步地,抽取所述第一结果集中的要比对的结果集与所述第二结果集进行比对,还包括:比对所述第一结果集中的要比对的结果集与所述第二结果集的每条记录的字段值;若所述字段值比对结果不一致,则断言失败;若所述字段值比对结果一致,则断言成功。进一步地,所述数据库查询结果中包含列名。进一步地,所述第一结果集为数组、多级数组、对象、多级对象以及数组、多级数组、对象、多级对象的多样组合体。进一步地,所述第二结果集为与第一结果集对应的数组、多级数组、对象、多级对象以及数组、多级数组、对象、多级对象的多样组合体。进一步地,所述第一结果集的格式为JSON格式,所述第二结果集的格式为JSON格式。第二方面,一种Jmeter平台的接口验证系统,其特征在于,包括:获取模块,用于获取服务器端的响应内容以及数据库查询结果;转换模块,用于将所述服务器端的响应内容转换成第一结果集,将所述数据库查询结果转换成第二结果集;比对模块,用于抽取所述第一结果集中的要比对的结果集与所述第二结果集进行比对;若比对结果不一致,则断言失败;若比对结果一致,则断言成功。第三方面,一种计算机,其特征在于,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行如上任一项所述方法的步骤。第四方面,一种存储有计算机可读指令的存储介质,其特征在于,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如上任一项所述方法的步骤。本专利技术的有益效果是:本专利技术所提供的一种Jmeter平台的接口验证方法,通过获取服务器端的响应内容以及数据库查询结果;将所述服务器端的响应内容转换成第一结果集,将所述数据库查询结果转换成第二结果集;并抽取第一结果集中的要比对的结果集与所述第二结果集进行比对;若比对结果不一致,则断言失败;若比对结果一致,则断言成功。不同的服务端返回的数据集是多种多样的,本系统可以智能判断并转换,使用者不需要了解复杂的逻辑,只需要一次调用就可以完成复杂的断言,大大提高了接口自动化的效率和质量。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。图1为本申请一个实施例中一种Jmeter平台的接口验证方法步骤图。图2为本申请另一个实施例中一种Jmeter平台的接口验证方法步骤图。图3为本申请另一个实施例中一种Jmeter平台的接口验证方法步骤图。具体实施方式为使本申请的目的、技术方案和优点更加清楚,下面将对本申请的技术方案进行详细的描述。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所得到的所有其它实施方式,都属于本申请所保护的范围。为实现以上目的,本专利技术采用如下技术方案:如图1所示,为本申请一个实施例中一种Jmeter平台的接口验证方法步骤图,包括:步骤S101、获取服务器端的响应内容以及数据库查询结果;其中,数据库查询结果中包含列名;步骤S102、将所述服务器端的响应内容转换成第一结果集,将所述数据库查询结果转换成第二结果集;步骤S103、抽取第一结果集中的要比对的结果集与所述第二结果集进行比对;步骤S104、若比对结果不一致,则断言失败;步骤S105、若比对结果一致,则断言成功。需要说明的是,JMeter是Apache组织开发的基于Java的压力测试工具。用于对软件做压力测试,它最初被设计用于Web应用测试,但后来扩展到其他测试领域。它可以用于测试静态和动态资源,例如静态文件、Java小服务程序、CGI脚本、Java对象、数据库、FTP服务器,等等。JMeter可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能。另外,JMeter能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证你的程序返回了你期望的结果。为了最大限度的灵活性,JMeter允许使用正则表达式创建断言。JMeter平台可以用于对静态的和动态的资源(文件,Servlet,Perl脚本,java对象,数据库和查询,FTP服务器等等)的性能进行测试。它可以用于对服务器、网络或对象模拟繁重的负载来测试它们的强度或分析不同压力类型下的整体性能。你可以使用它做性能的图形分析或在大并发负载测试你的服务器/脚本/对象。在设计阶段,JMeter能够充本文档来自技高网...

【技术保护点】
1.一种Jmeter平台的接口验证方法,其特征在于,包括:/n获取服务器端的响应内容以及数据库查询结果;/n将所述服务器端的响应内容转换成第一结果集,将所述数据库查询结果转换成第二结果集;/n抽取第一结果集中的要比对的结果集与所述第二结果集进行比对;/n若比对结果不一致,则断言失败;/n若比对结果一致,则断言成功。/n

【技术特征摘要】
1.一种Jmeter平台的接口验证方法,其特征在于,包括:
获取服务器端的响应内容以及数据库查询结果;
将所述服务器端的响应内容转换成第一结果集,将所述数据库查询结果转换成第二结果集;
抽取第一结果集中的要比对的结果集与所述第二结果集进行比对;
若比对结果不一致,则断言失败;
若比对结果一致,则断言成功。


2.根据权利要求1所述的方法,其特征在于,抽取所述第一结果集中的要比对的结果集与所述第二结果集进行比对,包括:
比对所述第一结果集中的要比对的结果集与所述第二结果集的记录总数;
若比对结果不一致,则断言失败;
若比对结果一致,则断言成功。


3.根据权利要求1所述的方法,其特征在于,抽取所述第一结果集中的要比对的结果集与所述第二结果集进行比对,还包括:
比对所述第一结果集中的要比对的结果集与所述第二结果集的每条记录的字段值;
若所述字段值比对结果不一致,则断言失败;
若所述字段值比对结果一致,则断言成功。


4.根据权利要求1所述的方法,其特征在于,所述数据库查询结果中包含列名。


5.根据权利要求1所述的方法,其特征在于,所述第一结果集为数组、多级数组、对象、多级对象以及数组、多...

【专利技术属性】
技术研发人员:杨晓慧
申请(专利权)人:上海中通吉网络技术有限公司
类型:发明
国别省市:上海;31

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1