模拟测试报文生成方法、装置、设备及存储介质与流程

文档序号:22314686发布日期:2020-09-23 01:38阅读:161来源:国知局
模拟测试报文生成方法、装置、设备及存储介质与流程

本发明涉及金融科技(fintech)技术领域,尤其涉及一种模拟测试报文生成方法、装置、设备及存储介质。



背景技术:

随着计算机技术的发展,越来越多的技术应用在金融领域,传统金融业正在逐步向金融科技(fintech)转变,但由于金融行业的安全性、实时性要求,也对技术提出了更高的要求。

项目在开发环境和测试环境中都需要进行测试。实际的项目一般比较复杂,会涉及到不同系统间交互、本地与远程交互,在现实中经常有系统间或本地与远程难以配合的情形。例如上游系统依赖于下游系统,若下游系统仅可提供接口文档并没有开发完善的功能,此时下游系统无法为上游系统提供测试所需的服务;或者下游系统难以触发到上游系统测试中所需要的异常情况;或者依赖本地系统进行测试时,本地系统难以提供异常场景;或者单测代码仅依赖于本地数据,不依赖远程服务。

现有的能满足各种情形的测试需求的通用型测试方法,存在着返回报文格式复杂且不能实现差异化、控制维度不够精细等缺陷。



技术实现要素:

本发明提供一种模拟测试报文生成方法、装置、设备及存储介质,旨在提供减轻测试工作量,提高精细程度,获得格式一致的报文。

为实现上述目的,本发明提供一种模拟测试报文生成方法,该方法包括:

接收并解析待测试项目的测试请求,获得多级请求对象;

基于预先设置的挡板配置表,判断是否存在与所述多级请求对象匹配的挡板;

若存在匹配的挡板,则基于所述多级请求对象构造对应的响应对象;

通过报文生成工具生成与所述响应对象对应的模拟测试报文,并将所述模拟测试报文返回至所述待测试项目。

优选地,所述接收并解析待测试项目的测试请求,获得多级请求对象的步骤包括:

接收待测试项目发送的测试请求,获得所述测试请求中的入参数据;

基于预先设置的参数解析器解析所述入参数据获得对应的多级请求对象,其中所述多级请求对象包括主键请求对象和自定义请求对象。

优选地,所述解析所述入参数据获得对应的多级请求对象的步骤包括:

基于预先设置的参数解析器解析所述入参数据,获得所述多级请求对象的键值;

将所述键值填入对应的多级请求对象,获得包括键值的所述多级请求对象。

优选地,所述基于所述多级请求对象构造对应的响应对象的步骤包括:

读取所述多级响应对象的第一键值;

调用语法分析器中的语法执行功能,根据语法表达式和所述多级请求对象的第一键值确定对应的响应对象的属性值;

将所述属性值对应写入所述响应对象,获得与所述多级请求对象的第一键值对应的响应对象。

优选地,所述通过报文生成工具生成与所述响应对象对应的模拟测试报文的步骤包括:

通过报文生成工具预生成包括可替换变量的初始报文,其中所述可替换变量基于预先设置的接口文档确定;

将所述可替换变量的第二键值替换所述响应对象中的可替换变量的属性值,生成格式统一的模拟测试报文。

优选地,所述基于预先设置的挡板配置表,判断是否存在与所述多级请求对象匹配的挡板的步骤包括:

将所述多级请求对象与预先设置的所述挡板配置表中的字段进行对比;

若所述挡板配置表中的字段完全包括所述多级请求对象,则判定存在匹配的挡板;

若所述挡板配置表中的字段不完全包括所述多级请求对象,则判定不存在匹配的挡板。

优选地,所述将所述多级请求对象与预先设置的所述挡板配置表中的字段进行对比的步骤包括:

将所述多级请求对象中的主键请求对象与预先设置的所述挡板配置表中的主键进行对比;

若所述挡板配置表中的主键包括所述主键请求对象,则将所述多级请求对象中的基本请求对象和自定义请求对象与所述挡板配置表中的对应字段进行对比。

优选地,所述接收并解析待测试项目的测试请求,获得多级请求对象的步骤之前还包括:

设置挡板并添加所述挡板的本地调用方法和远程调用方法。

优选地,所述基于预先设置的挡板配置表,判断是否存在与所述多级请求对象匹配的挡板的步骤之后还包括:

若不存在匹配的挡板,则返回提示信息。

此外,为实现上述目的,本发明还提供一种模拟测试报文生成装置,所述装置包括:

接收模块,用于接收并解析待测试项目的测试请求,获得多级请求对象;

判断模块,用于基于预先设置的挡板配置表,判断是否存在与所述多级请求对象匹配的挡板;

构造模块,用于若存在匹配的挡板,则基于所述多级请求对象构造对应的响应对象;

生成模块,用于通过报文生成工具生成与所述响应对象对应的模拟测试报文,并将所述模拟测试报文返回至所述待测试项目。

此外,为实现上述目的,本发明还提供一种模拟测试报文生成设备,所述模拟测试报文生成设备包括处理器,存储器以及存储在所述存储器中的模拟测试报文生成程序,所述模拟测试报文生成程序被所述处理器运行时,实现如上所述的模拟测试报文生成方法的步骤。

此外,为实现上述目的,本发明还提供一种计算机存储介质,所述计算机存储介质上存储有模拟测试报文生成程序,所述模拟测试报文生成程序被处理器运行时实现如上所述模拟测试报文生成方法的步骤。

相比现有技术,本发明提供一种模拟测试报文生成方法、装置、设备及存储介质,接收并解析待测试项目的测试请求,获得多级请求对象;基于预先设置的挡板配置表,判断是否存在与所述多级请求对象匹配的挡板;若存在匹配的挡板,则基于所述多级请求对象构造对应的响应对象;通过报文生成工具生成与所述响应对象对应的模拟测试报文,并将所述模拟测试报文返回至所述待测试项目。通过配置与待测试项目中多级请求对象匹配的挡板,由所述挡板返回基于报文生成工具生成的格式统一的模拟测试报文,由此减轻了测试工作量,提高了精细程度,获得了格式一致的报文。

附图说明

图1是本发明各实施例涉及的模拟测试报文生成设备的硬件结构示意图;

图2是本发明模拟测试报文生成方法第一实施例的流程示意图;

图3是本发明模拟测试报文生成方法第一实施例涉及的excel接口文档示意图;

图4是本发明模拟测试报文生成方法第一实施例涉及的挡板本地调用关系图;

图5是本发明模拟测试报文生成方法第一实施例涉及的挡板远程调用关系图;

图6是本发明模拟测试报文生成装置第一实施例的功能模块示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明实施例主要涉及的模拟测试报文生成设备是指能够实现网络连接的网络连接设备,所述模拟测试报文生成设备可以是服务器、云平台等。

参照图1,图1是本发明各实施例涉及的模拟测试报文生成设备的硬件结构示意图。本发明实施例中,模拟测试报文生成设备可以包括处理器1001(例如中央处理器centralprocessingunit、cpu),通信总线1002,输入端口1003,输出端口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信;输入端口1003用于数据输入;输出端口1004用于数据输出,存储器1005可以是高速ram存储器,也可以是稳定的存储器(non-volatilememory),例如磁盘存储器,存储器1005可选的还可以是独立于前述处理器1001的存储装置。本领域技术人员可以理解,图1中示出的硬件结构并不构成对本发明的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

继续参照图1,图1中作为一种可读存储介质的存储器1005可以包括操作系统、网络通信模块、应用程序模块以及模拟测试报文生成程序。在图1中,网络通信模块主要用于连接服务器,与服务器进行数据通信;而处理器1001可以调用存储器1005中存储的模拟测试报文生成程序,并执行本发明实施例提供的模拟测试报文生成方法。

基于上述模拟测试报文生成设备提出本发明第一实施例,本发明第一实施例提供一种模拟测试报文生成方法,所述方法包括接收并解析待测试项目的测试请求,获得多级请求对象;

步骤s101:基于预先设置的挡板配置表,判断是否存在与所述多级请求对象匹配的挡板;

步骤s102:若存在匹配的挡板,则基于所述多级请求对象构造对应的响应对象;

步骤s103:通过报文生成工具生成与所述响应对象对应的模拟测试报文,并将所述模拟测试报文返回至所述待测试项目。

本实施例中,基于挡板实现所述模拟测试报文生成方法。挡板(mock)是用于模拟交互项目的软件程序,在一些跨系统或者跨模块的项目中,往往由于客观因素的限制(例如测试硬件资源有限、多系统之间难以协调等),无法搭建一个完整的测试系统来完成测试工作。在搭建出待测试项目后,可以采用软件程序也即挡板来模拟相关交互项目的功能。

本实施例中涉及的挡板包括挡板配置表、参数解析器varanalyzer,语法分析器responsegrammar,报文生成工具mockitreportgenerator,挡板接口mockitapi以及aop拦截器mockit。

其中,所述挡板配置表包括多个字段,例如服务类型(servetype)、服务编码(servecode)、返回接口文档的统一资源定位符(reportuniformresourcelocator,reporturl)、请求键值(requestkeys)、响应语法公式(responsegrammar)。其中,servetype和servecode是主键用于匹配挡板;reporturl是返回接口文档的路径,所述接口文档包括excel格式的文档和基于showdoc(showdoc是适合it团队的在线api文档、技术文档工具)在线编辑的应用程序接口(applicationprogramminginterface,api)文档;requestkeys用于解析复杂的测试请求获得入参数据和对应的请求对象;responsegrammar用于获取响应对象的键值。例如所述servetype用于定义服务类型,说是服务类型可以是local(本地)、http(hypertexttransferprotocol,超文本传输协议)等;再例如所述server_code用于定义服务编码,可以是接口编码1001,1002等。所述report_url可借助报文生成工具mockitreportgenerator来预生成带可替换变量的报文;response_grammar可借助语法解析器responsegrammar来精确匹配是否命中挡板,以及返回可替换变量对应的值。所述挡板配置表既适用于开发环境也适用于测试环境。

本实施例中,所述接收并解析待测试项目的测试请求,获得多级请求对象的步骤包括:

接收待测试项目发送的测试请求,获得所述测试请求中的入参数据;

基于预先设置的参数解析器解析所述入参数据获得对应的多级请求对象,其中所述多级请求对象包括主键请求对象和自定义请求对象。

本实施例中,由所述待测试项目发起测试请求,所述测试请求包括项目名称、项目版本号、开发者信息、多级请求对象等入参数据,所述模拟测试报文生成设备接收到所述测试请求后,获得所述测试请求中的入参数据。并按照预先设定的多级请求对象的字段获得对应的主键请求对象和自定义请求对象,其中,所述主键请求对象包括servetype和servecode;所述自定义请求对象包括domainid(区域编码)、productid(产品编码)、通讯协议类型、类名等。

具体地,所述解析所述入参数据获得对应的多级请求对象的步骤包括:

基于预先设置的参数解析器解析所述入参数据,获得所述多级请求对象的。所述参数解析器从所述入参数据中获取各个多级请求对象的键名。

当确定所述请求对象后,则执行步骤s102:基于预先设置的挡板配置表,判断是否存在与所述多级请求对象匹配的挡板。

具体地,所述基于预先设置的挡板配置表,判断是否存在与所述多级请求对象匹配的挡板的步骤包括:

将所述多级请求对象与预先设置的所述挡板配置表中的字段进行对比;

若所述挡板配置表中的字段完全包括所述多级请求对象,则判定存在匹配的挡板;

若所述挡板配置表中的字段不完全包括所述多级请求对象,则判定不存在匹配的挡板。

具体地,先将所述多级请求对象中的主键请求对象与预先设置的所述挡板配置表中的主键进行对比;也即先比较servetype和servecode,例如若所述主键请求对象中的servetype是http,servecode是接口编码1001,则遍历或搜索所述挡板配置表中的serve_type和servecode,若所述挡板配置表中存在servetype为http,servecode为接口编码1001的主键,则判定所述挡板配置表包括所述主键请求对象;反之,若所述挡板配置表中不存在servetype为http,和/或不存在serve_code为接口编码1001的主键则判定所述挡板配置表不包括所述主键请求对象。

若所述挡板配置表中的主键包括所述主键请求对象,则将所述多级请求对象中的基本请求对象和自定义请求对象与所述挡板配置表中的对应字段进行对比;若所述挡板配置表中存在与所述主键请求对象的主键一致的servetype和servecode再继续比较各个所述基本请求对象和所述自定义请求对象,由此逐步实现精细控制,提高精细程度。本实施例中,可以并行对比所述基本请求对象和所述自定义请求对象,也可以先后对比所述基本请求对象和所述自定义请求对象。具体地,搜索或遍历所述挡板配置表,判断所述挡板配置表中是否存在与所述基本请求对象和/或所述自定义请求对象的键名一致的主键,若所述挡板配置表中存在与所述基本请求对象和所述自定义请求对象的键名一致的主键,则说明所述挡板配置表中的字段完全包括所述多级请求对象,由此可以判定存在匹配的挡板;若所述挡板配置表中不存在与所述基本请求对象和所述自定义请求对象的键名都一致的主键,则说明所述挡板配置表中的字段不完全包括所述多级请求对象,也即所述挡板配置表中的字段不完全包括所述多级请求对象,由此可以判定不存在与所述待测试项目匹配的挡板。

若不存在匹配的挡板,则返回提示信息。本实施例中,可以将所述提示信息设置为null(表示零值、空位)。

若存在匹配的挡板,则执行步骤s103:基于所述多级请求对象构造对应的响应对象。

当存在匹配的挡板后,则说明可以基于所述挡板构造与所述多级请求对象构造对应的响应对象。可以理解地,只有基于对应的响应对象才能获得测试所需的报文。

本实施例中,所述基于所述多级请求对象构造对应的响应对象的步骤包括:

读取所述多级响应对象的第一键值;调用语法分析器中的语法执行功能,根据语法表达式和所述多级请求对象的第一键值确定对应的响应对象的属性值;将所述属性值对应写入所述响应对象,获得与所述多级请求对象的第一键值对应的响应对象。

本实施例中,所述语法表达式的逻辑表达式包括&&、||;所述语法表达式的关系表达式包括>、>=、==、<等。所述语法表达式的内置函数包括isblank(判断字符串是否为空)、equal(判断字符串是否相等)、startwith(判断是否以字符串开始)等。例如,若if表达式中isblank(abc),则结果为false;若equal(abc,abc),则结果为false;若startwith(abc,a),则结果为true。

本实施例中,所述挡板包括语法分析器,所述语法分析器支持简单的语法判断,可以根据请求对象的值返回对应的响应对象,或者在未匹配到挡板是返回null。由此,可以通过所述语法分析器精确控制各种场景下的请求对象的响应对象。

在确定了所述响应对象后,则可以获得对应的表达式,所述表达式可以是inputstr,例如inputstr的语法表达公式可以是:

if(request.get(‘domainid’)==‘001’&request.get(‘productcd’)==‘2134’)

{

response.status=‘succ’;

response.sysno.=‘12356774’;}

else

{response.status=‘fail’;}

然后基于初始化所述响应对象,例如,初始化为:

responsegrammar=new;

responsegrammar(inputstr);

grammar.setrequest(request);

grammar.setresponse(response);

完成上述设置之后,将预先获得的第一键值对应填入多级请求对象中,获得包括所述第一键值的所述多级请求对象。本实施例中,读取对应的第一键值,然后将所述第一键值填入对应键名的多级请求对象中,即可获得包括所述第一键值的多级请求对象。一般地,测试请求中的入参数据的格式比较复杂并且各个入参数据的格式也难以统一,利用所述参数解析器可以把复杂的入参数据统一转换成键值类的请求对象,由此可以便于数据管理,并节约数据读取时间。

本实施例中可以基于语法表达公式填入所述第一键值,例如:

request.put(‘domainid’,‘001’);

request.put(‘productcd’,‘2134’)。

也即将多级请求对象中的基本请求对象或自定义请求对象中的键名为domainid的第一键值设置为001;将键名为productcd的第一键值设置为2134。

获得所述第一键值后,则调用语法分析器中的语法执行功能,根据语法表达式和所述多级请求对象的第一键值确定对应响应对象的属性值。所述语法执行功能(grammar.execute)。本实施例基于所述语法执行功能实现对语法表达式if中条件正误的判断,以及response对象属性的赋值。对于语法的分析,可以借助业界主流的javacc语法分析生成器来实现。

再将所述属性值对应写入所述响应对象,获得与所述多级请求对象的第一键值对应的响应对象。

当获得所述响应对象后,则执行步骤s103:通过报文生成工具生成与所述响应对象对应的模拟测试报文,并将所述模拟测试报文返回至所述待测试项目。

所述报文生成工具中预先定义了报文的格式,可以基于所述报文生成工具获得格式统一的报文。

具体地,通过报文生成工具预生成包括可替换变量的初始报文,其中所述可替换变量基于预先设置的接口文档确定;将所述可替换变量的第二键值替换所述响应对象中的可替换变量的属性值,生成格式统一的模拟测试报文。

本实施例中,需要预设设置接口文档。所述接口文档包括excel接口文档和api文档。参照图3,图3是本发明模拟测试报文生成方法第一实施例涉及的excel接口文档示意图。如图3所示,图3表示一个商业系统的实例excel接口文档,所述excel接口文档包括sys_name,txn_id,detail_type,fieldname,fielddesc,fieldtype,forceexsit,value_format,mock_value。其中,sys_name代表系统号,sys_name可以是dep;txn_id代表接口编号,例如1234;detail_type代表数据类型,数据类型包括req(请求数据)和rsp(返回数据);fieldname表示名称,可以是input,cust-accountno,subaccount-serialno,commreq,channelid,txnbranch_code,txn_teller_id,out_put,card_number,curd_nomber,cust_account_type;cust_account_no;account_name,open_branch_code,account_status,amount_block_flag,commres,txn_date,txn_time,sys,errcode,errmsg;所述fieldname对应的fielddesc分别是请求、客户账号、子账户序号、公共请求、渠道、交易机构、交易柜员、应答、卡号、客户号、客户账号类型、客户账号、账户名称、开户机构、账户状态、冻结状态、公共应答、交易日期、交易时间、错误信息、错误码以及错误描述;filed_type代表参数格式和长度等,对应的fieldtype分别为object,c(35),c(8),object,c(3),c(10),c(8),object,c(40),c(16),c(1),c(35),c(100),c(10),c(1),c(1),object,c(8),c(8),object,c(32),c(255)。

value_format是值的格式化,包括null,枚举数据例如enum(1,2),以及日期格式化。例如date(yyyymmdd)、date(yyyymmddhhmmsssss)等)mock_value表示可替换变量,例如s{request.acctno},s{request.branchcode},s{response.errcode},s{response.errmsg}等,若无指定的可替换变量,则所述可替换变量的第二键值为随机数。

由此,基于所述接口文档可以确定可替换变量以及所述可替换变量的第二键值。将所述可替换变量的第二键值替换所述响应对象中的可替换变量的属性值,即可以生成格式统一的模拟测试报文。

本实施例通过上述方案即可获得与待测试项目对应的格式统一的模拟测试报文。

进一步地,所述接收并解析待测试项目的测试请求,获得多级请求对象的步骤之前还包括:

设置挡板并添加所述挡板的本地调用方法和远程调用方法。

所述挡板需要提前设置,并且还需要提供本地调用方法和远程调用方法。

本实施例中,添加所述挡板的本地调用方法是:增加注解@mockit(servertype=””,servercode=””),并在数据库表增加挡板配置。增加注解的方式是低入侵式。参照图4,图4是本发明模拟测试报文生成方法第一实施例涉及的挡板本地调用关系图。如图4a所示,在同一个系统businesssystem(商业系统)内,待测试的本地项目functiona需要调用本地项目functionb来完成测试,不使用挡板时直接在本地项目functiona和本地项目functionb之间通讯。若本地项目functionb未开发完全,或者不易触发异常情况则不能达到对本地项目functiona进行测试的目的。此时,可以利用挡板模拟本地项目functionb的功能。如图4b所示,在同一个系统businesssystem(商业系统)内,在待测试的本地项目functiona与本地项目functionb之间设置mockit(aop拦截器),并通过挡板接口(mockitapi)与mockitreportgenerator(报文生成工具)以及responsegrammar(语法分析器)进行通信,所述responsegrammar基于挡板配置表解析出多级请求对象,并构造对应的响应对象,所述mockitreportgenerator基于excel借口文档生成格式统一的模拟测试报文,如此按本实施例提供的模拟测试报文生成即可获得模拟本地项目functionb返回的模拟测试报文。

本实施例中,添加所述挡板的远程调用方法是直接通过mockitapi调用mock方法,具体的命令如下:

tmock(stringservertype,stringservercode,string[]reqkeys,object[]reqargs,class<t>returntype);

在调用远程服务remoteserve的clientapi之前,先所述命令远程嵌入mockitapi,基于所述mockitapi模拟挡板处理,未匹配到挡板,则继续触发正常的远程调用流程;未匹配到挡板,则基于挡板返回对应的模拟测试报文。

本实施例中,在远程调用mockittapi里封装,不改变开发者调用远程clientapi的方式,对开发者无感知。并且既可以实现本地测试,又可以实现远程测试。也不受测试环境的影响,既可以在开发环境中使用,也可以在测试环境中使用。

图5是本发明模拟测试报文生成方法第一实施例涉及的挡板远程调用关系图。如图5a所示,在同一个系统businesssystem(商业系统)内,待测试的本地项目functiona需要调用远程服务remoteserve来完成测试,不使用挡板时直接在本地项目functiona和远程服务remoteserve之间通讯。当在clientapi里面嵌入mockitapi之后,如图5b所示,本地项目functiona与mockitapi进行通讯,并通过mockitapi)与mockitreportgenerator以及responsegrammar进行通信,所述responsegrammar基于挡板配置表解析出多级请求对象,并构造对应的响应对象,所述mockitreportgenerator基于excel借口文档生成格式统一的模拟测试报文,如此按本实施例提供的模拟测试报文生成即可获得模拟远程服务remoteserve返回的模拟测试报文。

本实施例通过上述方案,接收并解析待测试项目的测试请求,获得多级请求对象;基于预先设置的挡板配置表,判断是否存在与所述多级请求对象匹配的挡板;若存在匹配的挡板,则基于所述多级请求对象构造对应的响应对象;通过报文生成工具生成与所述响应对象对应的模拟测试报文,并将所述模拟测试报文返回至所述待测试项目。通过配置与待测试项目中多级请求对象匹配的挡板,由所述挡板返回基于报文生成工具生成的格式统一的模拟测试报文,由此减轻了测试工作量,提高了精细程度,获得了格式一致的报文。

此外,本实施例还提供一种模拟测试报文生成装置。参考图6,图6是本发明模拟测试报文生成装置第一实施例的功能模块示意图。所述报文生成装置包括:

接收模块10,用于接收并解析待测试项目的测试请求,获得多级请求对象;

判断模块20,用于基于预先设置的挡板配置表,判断是否存在与所述多级请求对象匹配的挡板;

构造模块30,用于若存在匹配的挡板,则基于所述多级请求对象构造对应的响应对象;

生成模块40,用于通过报文生成工具生成与所述响应对象对应的模拟测试报文,并将所述模拟测试报文返回至所述待测试项目。

进一步地,所述接收模块还用于:

接收待测试项目发送的测试请求,获得所述测试请求中的入参数据;

基于预先设置的参数解析器解析所述入参数据获得对应的多级请求对象,其中所述多级请求对象包括主键请求对象和自定义请求对象。

进一步地,所述接收模块还用于:

基于预先设置的参数解析器解析所述入参数据,获得所述多级请求对象的键值;

将所述键值填入对应的多级请求对象,获得包括键值的所述多级请求对象。

进一步地,所述构造模块还用于:

读取所述多级响应对象的第一键值;

调用语法分析器中的语法执行功能,根据语法表达式和所述多级请求对象的第一键值确定对应的响应对象的属性值;

将所述属性值对应写入所述响应对象,获得与所述多级请求对象的第一键值对应的响应对象。

进一步地,所述生成模块还用于:

通过报文生成工具预生成包括可替换变量的初始报文,其中所述可替换变量基于预先设置的接口文档确定;

将所述可替换变量的第二键值替换所述响应对象中的可替换变量的属性值,生成格式统一的模拟测试报文。

进一步地,所述判断模块还用于:

将所述多级请求对象与预先设置的所述挡板配置表中的字段进行对比;

若所述挡板配置表中的字段完全包括所述多级请求对象,则判定存在匹配的挡板;

若所述挡板配置表中的字段不完全包括所述多级请求对象,则判定不存在匹配的挡板。

进一步地,所述判断模块还用于:

将所述多级请求对象中的主键请求对象与预先设置的所述挡板配置表中的主键进行对比;

若所述挡板配置表中的主键包括所述主键请求对象,则将所述多级请求对象中的基本请求对象和自定义请求对象与所述挡板配置表中的对应字段进行对比。

进一步地,所述接收模块还用于:

设置挡板并添加所述挡板的本地调用方法和远程调用方法。

进一步地,所述判断模块还用于:

若不存在匹配的挡板,则返回提示信息。

此外,本发明实施例还提供一种计算机存储介质,所述计算机存储介质上存储有模拟测试报文生成程序,所述模拟测试报文生成程序被处理器运行时实现如上所述模拟测试报文生成方法的步骤,此处不再赘述。

相比现有技术,本发明提供一种模拟测试报文生成方法、装置、设备及存储介质,接收并解析待测试项目的测试请求,获得多级请求对象;基于预先设置的挡板配置表,判断是否存在与所述多级请求对象匹配的挡板;若存在匹配的挡板,则基于所述多级请求对象构造对应的响应对象;通过报文生成工具生成与所述响应对象对应的模拟测试报文,并将所述模拟测试报文返回至所述待测试项目。通过配置与待测试项目中多级请求对象匹配的挡板,由所述挡板返回基于报文生成工具生成的格式统一的模拟测试报文,由此减轻了测试工作量,提高了精细程度,获得了格式一致的报文。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备执行本发明各个实施例所述的方法。

以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或流程变换,或直接或间接运用在其它相关的技术领域,均同理包括在本发明的专利保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1