CN115801652A - 一种航空系统测试方法、系统及相关装置 - Google Patents
一种航空系统测试方法、系统及相关装置 Download PDFInfo
- Publication number
- CN115801652A CN115801652A CN202211454997.9A CN202211454997A CN115801652A CN 115801652 A CN115801652 A CN 115801652A CN 202211454997 A CN202211454997 A CN 202211454997A CN 115801652 A CN115801652 A CN 115801652A
- Authority
- CN
- China
- Prior art keywords
- sih
- simulator
- http
- http request
- message
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000010998 test method Methods 0.000 title abstract description 4
- 238000012360 testing method Methods 0.000 claims abstract description 130
- 238000000034 method Methods 0.000 claims description 21
- 238000006243 chemical reaction Methods 0.000 claims description 6
- 230000014509 gene expression Effects 0.000 claims description 5
- 238000010586 diagram Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000001105 regulatory effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Landscapes
- Debugging And Monitoring (AREA)
- Computer And Data Communications (AREA)
Abstract
本申请提供了一种航空系统测试方法、系统及相关装置,在本申请中,设置SIH模拟器和HTTP模拟器,SIH模拟器可以将被测系统的SIH请求报文转换得到HTTP请求报文,并将HTTP请求报文发送给HTTP模拟器,由HTTP模拟器在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,基于所述目标Mock规则获得返回报文,实现Mock服务适用于航空系统,保证航空系统测试效率。
Description
技术领域
本申请涉及航空服务技术领域,特别涉及一种航空系统测试方法、系统及相关装置。
背景技术
随着航空信息系统的不断发展,一套完整的航空信息系统一般会按照业务划分为多个系统,系统之间具有复杂的依赖关系。一个系统在处理业务的过程中,往往需要调用其他多个系统进行数据查询或业务操作,并依据调用结果执行不同的业务流程。这可能会导致测试人员在测试某个系统时,会受到其他被调系统的数据及环境影响,需要准备大量的复杂的测试数据,并且需要排除被调系统的问题,才可以完成测试,测试效率比较低。
因此,如何提高测试效率成为亟待解决的问题。
发明内容
为解决上述技术问题,本申请实施例提供一种航空系统测试方法、系统及相关装置,以达到保证航空系统测试效率的目的,技术方案如下:
一种航空系统测试方法,应用于HTTP模拟器,该方法包括:
获取SIH模拟器发送的HTTP请求,所述HTTP请求至少包含HTTP请求报文,所述HTTP请求报文为所述SIH模拟器将来自被测系统的SIH请求报文转换得到的;
在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,基于所述目标Mock规则获得返回报文;
将所述返回报文发送给所述SIH模拟器,以使得所述SIH模拟器将所述返回报文转换为SIH协议返回报文,将所述SIH协议返回报文发送给所述被测系统进行测试。
可选的,所述HTTP请求还包括测试环境标识和源地址名;
所述在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,包括:
在Mock规则管理器中查找得到与所述测试环境标识和源地址名匹配的至少一个第一Mock规则;
从所述至少一个第一Mock规则中查找得到与所述HTTP请求报文匹配的目标Mock规则。
可选的,所述从所述至少一个第一Mock规则中查找得到与所述HTTP请求报文匹配的目标Mock规则,包括:
从所述至少一个第一Mock规则中查找与所述HTTP请求报文匹配的Mock规则,若与所述HTTP请求报文匹配的Mock规则有多个,则从与所述HTTP请求报文匹配的多个Mock规则中选择权重最高的Mock规则为目标Mock规则。
优选的,所述第一Mock规则包括:采用Velocity或Groovy语法编写的Mock规则表达式。
一种航空系统测试方法,应用于SIH模拟器,该方法包括:
接收被测系统发送的SIH请求,所述SIH请求至少包含SIH请求报文;
将所述SIH请求报文转换为HTTP请求报文,并发送至少包含所述HTTP请求报文的HTTP请求给HTTP模拟器,以使得所述HTTP模拟器获取所述HTTP请求,在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,基于所述目标Mock规则获得返回报文,并发送所述返回报文给所述HTTP模拟器,将所述返回报文发送给所述SIH模拟器;
将所述返回报文转换为SIH协议返回报文,将所述SIH协议返回报文发送给所述被测系统进行测试。
可选的,所述发送至少包含所述HTTP请求报文的HTTP请求给HTTP模拟器,包括:
发送包含所述HTTP请求报文、测试环境标识和源地址名的HTTP请求给HTTP模拟器。
一种HTTP模拟器,包括:
第一获取模块,用于获取SIH模拟器发送的HTTP请求,所述HTTP请求至少包含HTTP请求报文,所述HTTP请求报文为所述SIH模拟器将来自被测系统的SIH请求报文转换得到的;
第一确定模块,用于在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,基于所述目标Mock规则获得返回报文;
第一发送模块,用于将所述返回报文发送给所述SIH模拟器,以使得所述SIH模拟器将所述返回报文转换为SIH协议返回报文,将所述SIH协议返回报文发送给所述被测系统进行测试。
可选的,所述HTTP请求还包括测试环境标识和源地址名;
所述第一确定模块,具体用于:
在Mock规则管理器中查找得到与所述测试环境标识和源地址名匹配的至少一个第一Mock规则;
从所述至少一个第一Mock规则中查找得到与所述HTTP请求报文匹配的目标Mock规则。
一种SIH模拟器,包括:
接收模块,用于接收被测系统发送的SIH请求,所述SIH请求至少包含SIH请求报文;
第一转换模块,用于将所述SIH请求报文转换为HTTP请求报文;
第二发送模块,用于发送至少包含所述HTTP请求报文的HTTP请求给HTTP模拟器,以使得所述HTTP模拟器获取所述HTTP请求,在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,基于所述目标Mock规则获得返回报文,并发送所述返回报文给所述HTTP模拟器,将所述返回报文发送给所述SIH模拟器;
第二转换模块,用于将所述返回报文转换为SIH协议返回报文;
第三发送模块,用于将所述SIH协议返回报文发送给所述被测系统进行测试。
一种航空系统测试系统,包括:SIH模拟器和HTTP模拟器;
所述SIH模拟器,用于,接收被测系统发送的SIH请求,所述SIH请求至少包含SIH请求报文,将所述SIH请求报文转换为HTTP请求报文,并发送至少包含所述HTTP请求报文的HTTP请求给HTTP模拟器;
所述HTTP模拟器,用于获取所述HTTP请求,在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,基于所述目标Mock规则获得返回报文,并发送所述返回报文给所述HTTP模拟器,将所述返回报文发送给所述SIH模拟器;
所述SIH模拟器,还用于将所述返回报文转换为SIH协议返回报文,将所述SIH协议返回报文发送给所述被测系统进行测试。
与现有技术相比,本申请的有益效果为:
在本申请中,设置SIH模拟器和HTTP模拟器,SIH模拟器可以将被测系统的SIH请求报文转换得到HTTP请求报文,并将HTTP请求报文发送给HTTP模拟器,由HTTP模拟器在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,基于所述目标Mock规则获得返回报文,实现Mock服务适用于航空系统,保证航空系统测试效率。
附图说明
结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,原件和元素不一定按照比例绘制。
图1是本申请实施例1提供的一种航空系统测试方法的流程图;
图2是本申请实施例2提供的一种航空系统测试方法的流程图;
图3是本申请实施例3提供的一种航空系统测试方法的流程图;
图4是本申请实施例4提供的一种航空系统测试方法的流程图;
图5是本申请实施例5提供的一种航空系统测试方法的流程图;
图6是本申请提供的一种HTTP模拟器的结构示意图;
图7是本申请提供的一种SIH模拟器的结构示意图;
图8是本申请提供的一种航空系统测试系统的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本公开中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
在测试人员其实只关注被测系统的执行结果是否符合预期的背景下,发明人发现可以模拟被调系统,按照测试人员自定义的规则,根据不同的请求去生成不同的返回,从而满足出不同的测试场景,排除了其他系统环境和数据的影响,能够稳定地获得期望返回,即使在其他被调系统未开发完成的情况下,也可以先对被测系统进行测试,极大地提高了测试效率。
其中,目前可以使用Mock服务,模拟被调系统。但是,目前的Mock服务大部分是针对HTTP(超文本传输协议,Hyper Text Transfer Protocol)的,不适用于航空内部协议(如,SIH协议),导致Mock服务无法适用于航空测试系统。
为解决上述问题,本申请提供一种航空系统测试方法用于实现应用Mock测试技术,模拟航空的被调系统完成测试。
接下来对本申请实施例公开的测试方法进行介绍,该方法应用于HTTP模拟器,如图1所示的,为本申请实施例1提供的一种航空系统测试方法的流程图,该方法可以包括但并不局限于以下步骤:
步骤S11、获取SIH模拟器发送的HTTP请求,所述HTTP请求至少包含HTTP请求报文,所述HTTP请求报文为所述SIH模拟器将来自被测系统的SIH请求报文转换得到的。
本实施例中,被测系统在测试需要调用目标系统时,可以向SIH模拟器发送SIH请求,SIH请求至少可以包含SIH请求报文、被测系统的地址和目标系统的地址。
SIH请求报文可以理解为SIH协议的请求报文。SIH协议为航空系统的一种内部协议,旨在提供企业内部系统间互访的快速解决方案,消除不同应用之间的技术差异,让不同的应用服务器协调运作,实现了不同服务之间的通信与整合,支持基于内容的路由与管控,具备了复杂数据的传输能力,并可以提供一系列的标准接口。
被测系统向SIH模拟器发送SIH请求,具体可以包括:
被测系统将SIH请求写入被测系统的发消息队列A_OUTPUT,并在SIH请求的报头中设置源地址为被测系统的地址(如,OriSys=A)和目的地址为SIH模拟器的地址(如,DesSys=B)。由SIH服务从发消息队列A_OUTPUT中获取SIH请求,根据SIH请求中SIH模拟器的地址,将SIH请求放到SIH模拟器的收消息队列B_INPUT中。
具体地,SIH模拟器可以从收消息队列B_INPUT中提取SIH请求,以获得SIH请求。
SIH模拟器可以将SIH请求转换为HTTP请求,并基于HTTP模拟器的地址,向HTTP模拟器发送HTTP请求,相应地,HTTP模拟器接收SIH模拟器发送的HTTP请求。
步骤S12、在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,基于所述目标Mock规则获得返回报文。
Mock规则管理器中可以包含多个Mock规则,多个Mock规则可以用于模拟多个不同的目标系统,也可以用于模拟一个目标系统对于不同的请求报文会有不同的响应,返回不同的返回报文。
可以理解的是,返回报文为模拟目标系统,响应HTTP请求报文得到的报文。
基于所述目标Mock规则获得返回报文可以包括但不局限于:获取目标Mock规则中期望返回内容中的文本内容;或,根据目标Mock规则中期望返回内容中填写的Velocity语法模板、Groovy语法模板或Python语法模板,生成返回报文。
步骤S13、将所述返回报文发送给所述SIH模拟器,以使得所述SIH模拟器将所述返回报文转换为SIH协议返回报文,将所述SIH协议返回报文发送给所述被测系统进行测试。
具体地,SIH模拟器可以将SIH协议返回报文放入SIH模拟器的发消息队列B_OUTPUT中。由SIH服务从发消息队列B_OUTPUT中读取SIH协议返回报文,并写入被测系统的收消息队列A_INPUT中,由被测系统中收消息队列A_INPUT中读取SIH协议返回报文,并结合SIH协议返回报文进行测试。
在本实施中,设置SIH模拟器和HTTP模拟器,SIH模拟器可以将被测系统的SIH请求报文转换得到HTTP请求报文,并将HTTP请求报文发送给HTTP模拟器,由HTTP模拟器在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,基于所述目标Mock规则获得返回报文,实现Mock服务适用于航空系统,保证航空系统测试效率。
作为本申请另一可选实施例,参照图2,为本申请提供的一种航空系统测试方法实施例2的流程图,本实施例主要是对上述实施例1描述的航空系统测试方法的扩展方案,如图2所示,该方法可以包括但并不局限于以下步骤:
步骤S21、获取SIH模拟器发送的HTTP请求,所述HTTP请求至少包含测试环境标识、源地址名和HTTP请求报文,所述HTTP请求报文为所述SIH模拟器将来自被测系统的SIH请求报文转换得到的。
本实施例中,为了适用于多套测试环境,SIH模拟器可以针对每套测试环境,分别对该测试环境下的一个INPUT队列进行监听;另外,为了区分不同测试环境的Mock规则,SIH模拟器向HTTP模拟器发送HTTP请求时,可以用测试环境标识作为域名,因此需要在SIH模拟器的运行环境下配置hosts,把域名指向HTTP模拟器的IP。例如,若N是测试环境标识,10.1.1.1是HTTP模拟器的IP,配置hosts为N10.1.1.1。
HTTP请求可以包含HTTP请求报文及url,其中,url可以包含测试环境标识和源地址名。具体地,SIH模拟器获取被测系统的SIH请求报文,根据测试环境标识和源地址名,和SIH请求报文的SIH模拟器的地址拼接为HTTP模拟器的url的值。例如,url可以是http://N:7000/dep、http://M:7000/dep、http://N:7000/ic,hosts里加上N 10.1.1.1和M 10.1.1.1即可。N或M为测试环境标识,dep或ic为源地址名。
步骤S22、在Mock规则管理器中查找得到与所述测试环境标识和源地址名匹配的至少一个第一Mock规则。
HTTP模拟器收到HTTP请求时,可以从HTTP请求中解析出测试环境标识,如,N或M,也可以从HTTP请求中获取到url中的源地址名,如,dep或ic。
HTTP模拟器在获取到测试环境标识和源地址名之后,可以在Mock规则管理器中查找得到与所述测试环境标识和源地址名匹配的至少一个第一Mock规则。
本实施例中,所述第一Mock规则可以包括但不局限于:采用Velocity或Groovy语法编写的Mock规则表达式。Velocity可以理解为一个基于Java的模板引擎,它允许用简洁的语法引用Java代码中定义的方法。
Groovy,用于Java虚拟机的一种敏捷的动态语言,它是一种成熟的面向对象编程语言,既可以用于面向对象编程,又可以用作纯粹的脚本语言。使用该种语言不必编写过多的代码,同时又具有闭包和动态语言中的其他特性。
步骤S23、从所述至少一个第一Mock规则中查找得到与所述HTTP请求报文匹配的目标Mock规则。
步骤S24、基于所述目标Mock规则获得返回报文,并发送所述返回报文给所述HTTP模拟器。
步骤S25、将所述返回报文发送给所述SIH模拟器,以使得所述SIH模拟器将所述返回报文转换为SIH协议返回报文,将所述SIH协议返回报文发送给所述被测系统进行测试。
在本实施中,设置SIH模拟器和HTTP模拟器,SIH模拟器可以将被测系统的SIH请求报文转换得到HTTP请求报文,并将测试环境标识和源地址名和HTTP请求报文发送给HTTP模拟器,由HTTP模拟器在Mock规则管理器中查找得到与所述测试环境标识和源地址名匹配的至少一个第一Mock规则,从所述至少一个第一Mock规则中查找得到与所述HTTP请求报文匹配的目标Mock规则,实现针对不同测试环境匹配目标Mock规则,实现不同测试环境的Mock服务适用于航空系统,及在不同的测试环境中对航空系统进行测试,保证航空系统测试效率。例如,若Mock规则管理器中包含如表1所示的6条Mock规则。
表1
为了适用于N和M两套测试环境,SIH模拟器向HTTP模拟器发送HTTP请求时,需要用测试环境标识作为域名。假设HTTP模拟器的IP是10.1.1.1,那么需要在SIH模拟器环境配置两条hosts,N 10.1.1.1和M 10.1.1.1。
SIH模拟器启动两个监听,分别对N环境的SIH的B_INPUT队列和M环境的SIH的B_INPUT队列。
HTTP模拟器启动监听,监听10.1.1.1的7000端口的HTTP请求。
用户在N环境下对被测系统进行测试,希望使用Mock测试的方法避免其它被调系统对测试的干扰,此时可以将被测系统调用其他系统的SIH请求报文头中的DesSys设置为B,发给SIH模拟器。包含报文头和报文内容的完整的SIH请求报文示例如下:
SIH=13.1;MsgLen=00000346;HeadLen=00000102;ExtLen=00000134;ResLen=00000000;
OriSys=A;DesSys=B;MsgType=2;TransactionID=e988fa5fc7fb459b8c362e4c65d3744c;SessionID=UID2873_Bysasdjf;
Country=CN;CtxType=5;FuncCode=11;UID=xxx;UsasSys=B;PID=12345;CWA=B;Office=PEK003;Airline=CA;Agent=99;Level=73;ReqFormat=2;ResFormat=5;
{"airline":"CA","fltNo":"1831"}
SIH模拟器从N环境的B_INPUT队列中取出被测系统发出的SIH请求。
测试环境标识是N,SIH请求报文头的OriSys值为A,根据他们拼接出要请求的HTTP模拟器的url的值为http://N:7000/A。
基于上述HTTP模拟器的url(即,http://N:7000/A)发送HTTP请求到HTTP模拟器,请求的报文内容为SIH模拟器收到的SIH请求报文的内容,即{“airline”:”CA”,”fltNo”:”1831”}。
HTTP模拟器接收SIH模拟器发送的HTTP请求,并根据url(即,http://N:7000/A)中的测试环境标识N和源地址名A,从Mock规则管理器中查找出测试环境标识等于N,源地址等于源地址名A的Mock规则。因此从表1中可以筛选出规则3-6符合条件。
取出HTTP模拟器收到的请求报文,内容为{“airline”:”CA”,”fltNo”:”1831”}。在筛选出的Mock规则3-6中,逐条判断请求报文是否匹配Mock规则中用Velocity语法或Groovy语法编写的匹配规则的表达式。因此从表1中可以筛选出规则5-6为目标Mock规则。
如果未找到匹配的Mock规则,则返回报文为can't find mock;根据规则6中期望返回中填写的Groovy语法的内容,生成返回报文内容为:{“airline”:”CA”,”mockId”:”6”}。
HTTP模拟器将返回报文{“airline”:”CA”,”mockId”:”6”}作为HTTP请求的返回,返回给SIH模拟器。
SIH模拟器接收HTTP模拟器的返回,取出返回报文,根据之前收到的SIH的请求拼接SIH报文头,并将报文头中的OriSys和DeySys的值互换,组合出完整的SIH返回报文,内容如下:
SIH=13.1;MsgLen=00000344;HeadLen=00000102;ExtLen=00000134;ResLen=00000000;
OriSys=B;DesSys=A;MsgType=5;TransactionID=e988fa5fc7fb459b8c362e4c65d3744c;SessionID=UID2873_Bysasdjf;
Country=CN;CtxType=5;FuncCode=11;UID=xxx;UsasSys=B;PID=12345;CWA=B;Office=PEK003;Airline=CA;Agent=99;Level=73;ReqFormat=2;ResFormat=5;
{"airline":"CA","mockId":"6"}
SIH模拟器将完整返回报文放入B_OUTPUT队列,SIH服务将此报文转发至A_INPUT队列,被测系统A收到了返回报文并继续进行后续的业务操作。
作为本申请另一可选实施例,参照图3,为本申请提供的一种航空系统测试方法实施例3的流程图,本实施例主要是对上述实施例2描述的航空系统测试方法的细化方案,如图3所示,该方法可以包括但并不局限于以下步骤:
步骤S31、获取SIH模拟器发送的HTTP请求,所述HTTP请求至少包含测试环境标识和源地址名和HTTP请求报文,所述HTTP请求报文为所述SIH模拟器将来自被测系统的SIH请求报文转换得到的。
步骤S32、在Mock规则管理器中查找得到与所述测试环境标识和源地址名匹配的至少一个第一Mock规则。
步骤S31-S32的详细过程可以参见实施例2中步骤S21-S22的相关介绍,在此不再赘述。
步骤S33、从所述至少一个第一Mock规则中查找与所述HTTP请求报文匹配的Mock规则,若与所述HTTP请求报文匹配的Mock规则有多个,则从与所述HTTP请求报文匹配的多个Mock规则中选择权重最高的Mock规则为目标Mock规则。
每个Mock规则可以对应一个权重,权重表征Mock规则被优先选用的程度。
步骤S33为实施例2中步骤S23的一种具体实施方式。
步骤S34、基于所述目标Mock规则获得返回报文,并发送所述返回报文给所述HTTP模拟器。
步骤S35、将所述返回报文发送给所述SIH模拟器,以使得所述SIH模拟器将所述返回报文转换为SIH协议返回报文,将所述SIH协议返回报文发送给所述被测系统进行测试。
步骤S34-S35的详细过程可以参见实施例2中步骤S24-S25的相关介绍,在此不再赘述。
在本申请的另一个实施例中提供一种航空系统测试方法,该方法应用于SIH模拟器,如图4所示的,为本申请实施例4提供的一种航空系统测试方法的流程图,该方法可以包括但并不局限于以下步骤:
步骤S41、接收被测系统发送的SIH请求,所述SIH请求至少包含SIH请求报文。
步骤S42、将所述SIH请求报文转换为HTTP请求报文,并发送至少包含所述HTTP请求报文的HTTP请求给HTTP模拟器。
其中,所述HTTP模拟器获取所述HTTP请求,在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,基于所述目标Mock规则获得返回报文,并发送所述返回报文给所述HTTP模拟器,将所述返回报文发送给所述SIH模拟器;
步骤S43、将所述返回报文转换为SIH协议返回报文,将所述SIH协议返回报文发送给所述被测系统进行测试。
步骤S41-S43的详细过程可以参见前述各实施例的相关介绍,在此不再赘述。
本实施例中,SIH模拟器可以将被测系统的SIH请求报文转换得到HTTP请求报文,并将HTTP请求报文发送给HTTP模拟器,由HTTP模拟器在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,基于所述目标Mock规则获得返回报文,实现Mock服务适用于航空系统,保证航空系统测试效率。
作为本申请另一可选实施例,参照图5,为本申请提供的一种航空系统测试方法实施例5的流程图,本实施例主要是对上述实施例4描述的航空系统测试方法的扩展方案,如图5所示,该方法可以包括但并不局限于以下步骤:
步骤S51、接收被测系统发送的SIH请求,所述SIH请求至少包含SIH请求报文。
步骤S52、将所述SIH请求报文转换为HTTP请求报文,并发送包含所述HTTP请求报文、测试环境标识和源地址名的HTTP请求给HTTP模拟器。
其中,所述HTTP模拟器可以获取所述HTTP请求,在Mock规则管理器中查找得到与所述测试环境标识和源地址名匹配的至少一个第一Mock规则,从所述至少一个第一Mock规则中查找得到与所述HTTP请求报文匹配的目标Mock规则,基于所述目标Mock规则获得返回报文,并发送所述返回报文给所述HTTP模拟器,将所述返回报文发送给所述SIH模拟器。
步骤S53、将所述返回报文转换为SIH协议返回报文,将所述SIH协议返回报文发送给所述被测系统进行测试。
本实施例中,SIH模拟器可以将被测系统的SIH请求报文转换得到HTTP请求报文,并将测试环境标识和源地址名和HTTP请求报文发送给HTTP模拟器,由HTTP模拟器在Mock规则管理器中查找得到与所述测试环境标识和源地址名匹配的至少一个第一Mock规则,从所述至少一个第一Mock规则中查找得到与所述HTTP请求报文匹配的目标Mock规则,实现针对不同测试环境匹配目标Mock规则,实现不同测试环境的Mock服务适用于航空系统,及在不同的测试环境中对航空系统进行测试,保证航空系统测试效率。
本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。
应当理解,本公开的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括但不限于面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
接下来对本申请提供的HTTP模拟器进行介绍,下文介绍的HTTP模拟器与上文介绍的航空系统测试方法可相互对应参照。
请参见图6,HTTP模拟器包括:第一获取模块100、第一确定模块200和第一发送模块300。
第一获取模块100,用于获取SIH模拟器发送的HTTP请求,所述HTTP请求至少包含HTTP请求报文,所述HTTP请求报文为所述SIH模拟器将来自被测系统的SIH请求报文转换得到的;
第一确定模块200,用于在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,基于所述目标Mock规则获得返回报文;
第一发送模块300,用于将所述返回报文发送给所述SIH模拟器,以使得所述SIH模拟器将所述返回报文转换为SIH协议返回报文,将所述SIH协议返回报文发送给所述被测系统进行测试。
所述HTTP请求还包括测试环境标识和源地址名;
所述第一确定模块200,具体用于:
在Mock规则管理器中查找得到与所述测试环境标识和源地址名匹配的至少一个第一Mock规则;
从所述至少一个第一Mock规则中查找得到与所述HTTP请求报文匹配的目标Mock规则。
所述从所述至少一个第一Mock规则中查找得到与所述HTTP请求报文匹配的目标Mock规则,包括:
从所述至少一个第一Mock规则中查找与所述HTTP请求报文匹配的Mock规则,若与所述HTTP请求报文匹配的Mock规则有多个,则从与所述HTTP请求报文匹配的多个Mock规则中选择权重最高的Mock规则为目标Mock规则。
所述第一Mock规则包括:采用Velocity或Groovy语法编写的Mock规则表达式。
描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定,例如,第一获取单元还可以被描述为“获取至少两个网际协议地址的单元”。
在本申请的另一个实施例中,提供一种SIH模拟器,与上文介绍的航空系统测试方法可相互对应参照。请参见图7,SIH模拟器包括:接收模块400、第一转换模块500、第二发送模块600、第二转换模块700和第三发送模块800。
接收模块400,用于接收被测系统发送的SIH请求,所述SIH请求至少包含SIH请求报文;
第一转换模块500,用于将所述SIH请求报文转换为HTTP请求报文;
第二发送模块600,用于发送至少包含所述HTTP请求报文的HTTP请求给HTTP模拟器,以使得所述HTTP模拟器获取所述HTTP请求,在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,基于所述目标Mock规则获得返回报文,并发送所述返回报文给所述HTTP模拟器,将所述返回报文发送给所述SIH模拟器;
第二转换模块700,用于将所述返回报文转换为SIH协议返回报文;
第三发送模块800,用于将所述SIH协议返回报文发送给所述被测系统进行测试。
在本申请的另一个实施例中,提供一种航空系统测试系统,请参见图8,航空系统测试系统包括:SIH模拟器10和HTTP模拟器20。
所述SIH模拟器10,用于,接收被测系统发送的SIH请求,所述SIH请求至少包含SIH请求报文,将所述SIH请求报文转换为HTTP请求报文,并发送至少包含所述HTTP请求报文的HTTP请求给HTTP模拟器;
所述HTTP模拟器20,用于获取所述HTTP请求,在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,基于所述目标Mock规则获得返回报文,并发送所述返回报文给所述HTTP模拟器,将所述返回报文发送给所述SIH模拟器;
所述SIH模拟器10,还用于将所述返回报文转换为SIH协议返回报文,将所述SIH协议返回报文发送给所述被测系统进行测试。
尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。
虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
Claims (10)
1.一种航空系统测试方法,其特征在于,应用于HTTP模拟器,该方法包括:
获取SIH模拟器发送的HTTP请求,所述HTTP请求至少包含HTTP请求报文,所述HTTP请求报文为所述SIH模拟器将来自被测系统的SIH请求报文转换得到的;
在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,基于所述目标Mock规则获得返回报文;
将所述返回报文发送给所述SIH模拟器,以使得所述SIH模拟器将所述返回报文转换为SIH协议返回报文,将所述SIH协议返回报文发送给所述被测系统进行测试。
2.根据权利要求1所述的方法,其特征在于,所述HTTP请求还包括测试环境标识和源地址名;
所述在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,包括:
在Mock规则管理器中查找得到与所述测试环境标识和源地址名匹配的至少一个第一Mock规则;
从所述至少一个第一Mock规则中查找得到与所述HTTP请求报文匹配的目标Mock规则。
3.根据权利要求2所述的方法,其特征在于,所述从所述至少一个第一Mock规则中查找得到与所述HTTP请求报文匹配的目标Mock规则,包括:
从所述至少一个第一Mock规则中查找与所述HTTP请求报文匹配的Mock规则,若与所述HTTP请求报文匹配的Mock规则有多个,则从与所述HTTP请求报文匹配的多个Mock规则中选择权重最高的Mock规则为目标Mock规则。
4.根据权利要求2所述的方法,其特征在于,所述第一Mock规则包括:采用Velocity或Groovy语法编写的Mock规则表达式。
5.一种航空系统测试方法,其特征在于,应用于SIH模拟器,该方法包括:
接收被测系统发送的SIH请求,所述SIH请求至少包含SIH请求报文;
将所述SIH请求报文转换为HTTP请求报文,并发送至少包含所述HTTP请求报文的HTTP请求给HTTP模拟器,以使得所述HTTP模拟器获取所述HTTP请求,在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,基于所述目标Mock规则获得返回报文,并发送所述返回报文给所述HTTP模拟器,将所述返回报文发送给所述SIH模拟器;
将所述返回报文转换为SIH协议返回报文,将所述SIH协议返回报文发送给所述被测系统进行测试。
6.根据权利要求5所述的方法,其特征在于,所述发送至少包含所述HTTP请求报文的HTTP请求给HTTP模拟器,包括:
发送包含所述HTTP请求报文、测试环境标识和源地址名的HTTP请求给HTTP模拟器。
7.一种HTTP模拟器,其特征在于,包括:
第一获取模块,用于获取SIH模拟器发送的HTTP请求,所述HTTP请求至少包含HTTP请求报文,所述HTTP请求报文为所述SIH模拟器将来自被测系统的SIH请求报文转换得到的;
第一确定模块,用于在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,基于所述目标Mock规则获得返回报文;
第一发送模块,用于将所述返回报文发送给所述SIH模拟器,以使得所述SIH模拟器将所述返回报文转换为SIH协议返回报文,将所述SIH协议返回报文发送给所述被测系统进行测试。
8.根据权利要求7所述的HTTP模拟器,其特征在于,所述HTTP请求还包括测试环境标识和源地址名;
所述第一确定模块,具体用于:
在Mock规则管理器中查找得到与所述测试环境标识和源地址名匹配的至少一个第一Mock规则;
从所述至少一个第一Mock规则中查找得到与所述HTTP请求报文匹配的目标Mock规则。
9.一种SIH模拟器,其特征在于,包括:
接收模块,用于接收被测系统发送的SIH请求,所述SIH请求至少包含SIH请求报文;
第一转换模块,用于将所述SIH请求报文转换为HTTP请求报文;
第二发送模块,用于发送至少包含所述HTTP请求报文的HTTP请求给HTTP模拟器,以使得所述HTTP模拟器获取所述HTTP请求,在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,基于所述目标Mock规则获得返回报文,并发送所述返回报文给所述HTTP模拟器,将所述返回报文发送给所述SIH模拟器;
第二转换模块,用于将所述返回报文转换为SIH协议返回报文;
第三发送模块,用于将所述SIH协议返回报文发送给所述被测系统进行测试。
10.一种航空系统测试系统,其特征在于,包括:SIH模拟器和HTTP模拟器;
所述SIH模拟器,用于,接收被测系统发送的SIH请求,所述SIH请求至少包含SIH请求报文,将所述SIH请求报文转换为HTTP请求报文,并发送至少包含所述HTTP请求报文的HTTP请求给HTTP模拟器;
所述HTTP模拟器,用于获取所述HTTP请求,在Mock规则管理器中查找与所述HTTP请求报文匹配的目标Mock规则,基于所述目标Mock规则获得返回报文,并发送所述返回报文给所述HTTP模拟器,将所述返回报文发送给所述SIH模拟器;
所述SIH模拟器,还用于将所述返回报文转换为SIH协议返回报文,将所述SIH协议返回报文发送给所述被测系统进行测试。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211454997.9A CN115801652B (zh) | 2022-11-21 | 2022-11-21 | 一种航空系统测试方法、系统及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211454997.9A CN115801652B (zh) | 2022-11-21 | 2022-11-21 | 一种航空系统测试方法、系统及相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115801652A true CN115801652A (zh) | 2023-03-14 |
CN115801652B CN115801652B (zh) | 2024-05-03 |
Family
ID=85439341
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211454997.9A Active CN115801652B (zh) | 2022-11-21 | 2022-11-21 | 一种航空系统测试方法、系统及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115801652B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150095090A (ko) * | 2014-02-12 | 2015-08-20 | 한국전자통신연구원 | 오픈플로우 기반의 통신환경 테스트 사례 생성장치 및 그 방법 |
CN110309058A (zh) * | 2019-05-24 | 2019-10-08 | 平安银行股份有限公司 | 业务端测试方法、装置、计算机装置及计算机存储介质 |
CN110851364A (zh) * | 2019-11-12 | 2020-02-28 | 深圳市前海随手数据服务有限公司 | 一种软件测试方法、系统及相关设备 |
CN111510330A (zh) * | 2020-04-10 | 2020-08-07 | 中国联合网络通信集团有限公司 | 接口管理装置、方法及存储介质 |
CN111708702A (zh) * | 2020-06-18 | 2020-09-25 | 深圳前海微众银行股份有限公司 | 模拟测试方法、客户端、服务端、系统与可读存储介质 |
CN111953659A (zh) * | 2020-07-21 | 2020-11-17 | 北京思特奇信息技术股份有限公司 | 一种http请求模拟处理的方法及系统 |
-
2022
- 2022-11-21 CN CN202211454997.9A patent/CN115801652B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20150095090A (ko) * | 2014-02-12 | 2015-08-20 | 한국전자통신연구원 | 오픈플로우 기반의 통신환경 테스트 사례 생성장치 및 그 방법 |
CN110309058A (zh) * | 2019-05-24 | 2019-10-08 | 平安银行股份有限公司 | 业务端测试方法、装置、计算机装置及计算机存储介质 |
CN110851364A (zh) * | 2019-11-12 | 2020-02-28 | 深圳市前海随手数据服务有限公司 | 一种软件测试方法、系统及相关设备 |
CN111510330A (zh) * | 2020-04-10 | 2020-08-07 | 中国联合网络通信集团有限公司 | 接口管理装置、方法及存储介质 |
CN111708702A (zh) * | 2020-06-18 | 2020-09-25 | 深圳前海微众银行股份有限公司 | 模拟测试方法、客户端、服务端、系统与可读存储介质 |
CN111953659A (zh) * | 2020-07-21 | 2020-11-17 | 北京思特奇信息技术股份有限公司 | 一种http请求模拟处理的方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN115801652B (zh) | 2024-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9317259B2 (en) | Apparatus, system, and method for automatically generating a reusable software component for interfacing with a web service | |
CN110457199B (zh) | 性能测试的方法和装置 | |
EP1576487B1 (en) | Web server hit multiplier and redirector | |
CN110659206B (zh) | 基于微服务的模拟架构建立方法、装置、介质及电子设备 | |
CN110855766A (zh) | 一种访问Web资源的方法、装置及代理服务器 | |
CN112448969A (zh) | 链路追踪方法、装置、系统、设备及可读存储介质 | |
CN114221995B (zh) | 服务调用方法、装置及电子设备 | |
CN109656799A (zh) | 测试方法和装置 | |
CN111767229A (zh) | 性能测试方法、装置和设备 | |
CN114489622A (zh) | 静态资源管理方法、Node.js应用、电子设备和存储介质 | |
US9866614B2 (en) | Methods for website version control using bucket cookies | |
CN115801652B (zh) | 一种航空系统测试方法、系统及相关装置 | |
KR20040051876A (ko) | 웹서비스 테스터 및 웹서비스 테스트 방법 | |
CN111158661A (zh) | 系统接口对接方法、装置、介质及电子设备 | |
CN115934537A (zh) | 接口测试工具生成方法、装置、设备、介质及产品 | |
CN114416597A (zh) | 测试用例记录的生成方法和装置 | |
CN111400623B (zh) | 用于搜索信息的方法和装置 | |
CN114722004A (zh) | 消息检索方法、装置、电子设备及存储介质 | |
CN118092729B (zh) | 一种基于微前端的微服务图标共享方法、设备及介质 | |
CN115242895B (zh) | 基于dpdk的访问本机方法和装置 | |
CN116760811B (zh) | Http数据处理方法、装置和可读存储介质 | |
CN113901377B (zh) | 遗留系统的服务调用方法、装置、存储介质及设备 | |
CN114650271B (zh) | 全局负载dns邻居站点学习方法及装置 | |
CN108809900A (zh) | 一种统一资源访问的框架及方法 | |
WO2013172660A1 (ko) | 콘텐츠 연결 시스템 및 그 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |