CN112256567A - 一种远程调用模拟与测试系统 - Google Patents
一种远程调用模拟与测试系统 Download PDFInfo
- Publication number
- CN112256567A CN112256567A CN202011049384.8A CN202011049384A CN112256567A CN 112256567 A CN112256567 A CN 112256567A CN 202011049384 A CN202011049384 A CN 202011049384A CN 112256567 A CN112256567 A CN 112256567A
- Authority
- CN
- China
- Prior art keywords
- service
- interface
- data
- description file
- simulation
- 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.)
- Withdrawn
Links
- 238000004088 simulation Methods 0.000 title claims abstract description 36
- 238000012360 testing method Methods 0.000 title claims abstract description 29
- 238000012986 modification Methods 0.000 claims description 5
- 230000004048 modification Effects 0.000 claims description 5
- 230000008859 change Effects 0.000 claims description 3
- 238000012544 monitoring process Methods 0.000 claims description 3
- 238000000034 method Methods 0.000 description 12
- 238000011161 development Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 6
- 230000004044 response Effects 0.000 description 3
- 230000007547 defect Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000009545 invasion Effects 0.000 description 2
- 238000012827 research and development Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3684—Test management for test design, e.g. generating new test cases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
- G06F11/3672—Test management
- G06F11/3688—Test management for test execution, e.g. scheduling of test suites
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
一种远程调用模拟与测试系统,包括接口描述文件和四大子服务,所述接口描述文件是一种序列化数据结构的协议,包含一个接口描述语言,描述数据结构,并提供程序工具根据这些描述产生代码,用于将这些数据结构产生或解析数据流,生成各种平台需要的接口代码;所述四大子服务包括存根服务、核心服务、测试服务和缓存服务。本发明提供了一种时间利用率较高、有效避免后端逻辑反复修改前端反复调试问题的远程调用模拟与测试系统。
Description
技术领域
本发明涉及一种远程调用模拟与测试系统,是一种整合接口描述文件、存根系统、用户界面、模拟数据、缓存系统、远程过程调用的一套基础开发测试系统。
背景技术
远程过程调用(Remote Procedure Call)是一个计算机通信协议。该协议允许运行于一台计算机的程序调用另一个地址空间(通常为一个开放网络的一台计算机)的子程序,无需额外地为这个交互作用编程,经典实现是一个通过发送请求-接受回应进行信息交互的系统。发现现有技术至少存在以下问题:当前项目开发过程中,面对复杂多变的业务规则,前端需要等待后端实现业务逻辑,才能进行调试,开发成本比较高,时间利用率差,业务规则修改频繁,后端逻辑调整,反复联调成本较高,不能高效的开发。
发明内容
为了克服已有技术在开发过程前后端开发不同步导致联调等待、时间利用率不高的不足,以及后端逻辑反复修改前端反复调试的不足,本发明提供了一种时间利用率较高、有效避免后端逻辑反复修改前端反复调试问题的远程调用模拟与测试系统。
本发明解决其技术问题所采用的技术方案是:
一种远程调用模拟与测试系统,包括接口描述文件和四大子服务,所述接口描述文件是一种序列化数据结构的协议,包含一个接口描述语言,描述数据结构,并提供程序工具根据这些描述产生代码,用于将这些数据结构产生或解析数据流,生成各种平台需要的接口代码;
所述四大子服务包括存根服务、核心服务、测试服务和缓存服务,所述存根服务用于提供网页服务,在进行模拟请求前,需要建立模拟数据,可以通过网页定位到接口描述文件的索引信息来建立模拟数据,存根服务对外开放增删改查接口以及描述文件的模板模拟数据;所述核心服务用于通过接口描述文件生成的接口代码,对外提供对应的访问接口,内部通过接口别名从缓存服务中按匹配规则获取对应的模拟数据;所述测试服务用于实时监测存根服务保存到缓存服务的数据变化,通过核心服务测试数据可用性;所述缓存服务用于按描述文件的索引信息存储所有模拟数据。
进一步,所述存根服务和核心服务是对外的服务,所述测试服务和缓存服务为对内的服务。
本发明中,前后端分离(让前端独立于后端进行开发调试);开发无侵入(不需要修改既有代码,返回模拟的响应数据),增加单元测试的真实性,方便扩展(支持支持扩展更多数据类型,支持自定义函数和正则),远程过程调用数据结构嵌套(支持无限极接口描述文件嵌套),人性化的网页进行模拟数据增删改查,模拟数据自动匹配对应的接口。
本发明的有益效果主要表现在:时间利用率较高、有效避免后端逻辑反复修改前端反复调试问题。
附图说明
图1是远程调用模拟与测试系统的架构图。
具体实施方式
下面结合附图对本发明作进一步描述。
参照图1,一种远程调用模拟与测试系统,分接口描述文件和四大子服务,对外的为存根服务和核心服务,内部的为测试服务和缓存服务。
接口描述文件:该文件是一种序列化数据结构的协议,包含一个接口描述语言,描述一些数据结构,并提供程序工具根据这些描述产生代码,用于将这些数据结构产生或解析数据流,生成各种平台需要的接口代码。
存根服务:提供网页服务,研发人员在进行模拟请求前,需要建立模拟数据,可以通过网页定位到接口描述文件的索引信息来建立模拟数据,存根服务对外开放增删改查接口以及描述文件的模板模拟数据。
核心服务:通过接口描述文件生成的接口代码,对外提供对应的访问接口,内部通过接口别名从缓存服务中按匹配规则获取对应的模拟数据。
测试服务:实时监测存根服务保存到缓存服务的数据变化,通过核心服务测试数据可用性。
缓存服务:按描述文件的索引信息存储所有模拟数据。
本实施例的实现过程为:
1)研发人员根据业务需求定义接口描述文件,各端根据描述文件生成对应的接口代码;
2)模拟服务内部按设定规则重新编译描述文件并提取所需的索引信息并缓存;
3)配置模拟系统并开启服务后,内部存根服务对外开放网页端口,按索引信息展示所有描述文件关键信息,并解析描述文件的模板数据,展示到网页上便于编写模拟数据,并从缓存服务内按索引信息读取已有的模拟数据展示到网页上;
4)研发人员通过网页端按对应的描述文件模板数据编写模拟数据,内部存根服务会根据描述文件的索引信息把模拟数据保存到缓存服务中;
5)测试服务监听到新的模拟数据会提取索引信息及对应的模拟数据对核心服务进行模拟测试,以确保模拟数据的可用性,并反馈到网页端;
6)客户端通过生成的接口代码调用核心服务,核心服务按接口别名对应到索引信息从缓存服务取出有效数据,再根据逻辑匹配规则返回模拟数据给客户端。
本实施例的客户端不限于附图中的Android、IOS、Web,只要使用本系统的同一远程过程调用协议即可使用本系统进行模拟数据测试。
本实施例的方案,本发明中,前后端分离(让前端独立于后端进行开发调试);开发无侵入(不需要修改既有代码,返回模拟的响应数据),增加单元测试的真实性,方便扩展(支持支持扩展更多数据类型,支持自定义函数和正则),远程过程调用数据结构嵌套(支持无限极接口描述文件嵌套),人性化的网页进行模拟数据增删改查,模拟数据自动匹配对应的接口。
本说明书的实施例所述的内容仅仅是对发明构思的实现形式的列举,仅作说明用途。本发明的保护范围不应当被视为仅限于本实施例所陈述的具体形式,本发明的保护范围也及于本领域的普通技术人员根据本发明构思所能想到的等同技术手段。
Claims (2)
1.一种远程调用模拟与测试系统,其特征在于,包括接口描述文件和四大子服务,所述接口描述文件是一种序列化数据结构的协议,包含一个接口描述语言,描述数据结构,并提供程序工具根据这些描述产生代码,用于将这些数据结构产生或解析数据流,生成各种平台需要的接口代码;
所述四大子服务包括存根服务、核心服务、测试服务和缓存服务,所述存根服务用于提供网页服务,在进行模拟请求前,需要建立模拟数据,可以通过网页定位到接口描述文件的索引信息来建立模拟数据,存根服务对外开放增删改查接口以及描述文件的模板模拟数据;所述核心服务用于通过接口描述文件生成的接口代码,对外提供对应的访问接口,内部通过接口别名从缓存服务中按匹配规则获取对应的模拟数据;所述测试服务用于实时监测存根服务保存到缓存服务的数据变化,通过核心服务测试数据可用性;所述缓存服务用于按描述文件的索引信息存储所有模拟数据。
2.如权利要求1所述的一种远程调用模拟与测试系统,其特征在于,所述存根服务和核心服务是对外的服务,所述测试服务和缓存服务为对内的服务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011049384.8A CN112256567A (zh) | 2020-09-29 | 2020-09-29 | 一种远程调用模拟与测试系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011049384.8A CN112256567A (zh) | 2020-09-29 | 2020-09-29 | 一种远程调用模拟与测试系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112256567A true CN112256567A (zh) | 2021-01-22 |
Family
ID=74233863
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011049384.8A Withdrawn CN112256567A (zh) | 2020-09-29 | 2020-09-29 | 一种远程调用模拟与测试系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112256567A (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020152456A1 (en) * | 2001-04-12 | 2002-10-17 | Nightingale Andrew Mark | Software and hardware simulation |
US20070277158A1 (en) * | 2006-02-24 | 2007-11-29 | International Business Machines Corporation | Method and apparatus for testing of business processes for Web services |
CN102063324A (zh) * | 2010-12-31 | 2011-05-18 | 杭州依赛通信有限公司 | 一种实现自动化编程的方法及系统 |
CN105138448A (zh) * | 2014-06-05 | 2015-12-09 | 北京畅游天下网络技术有限公司 | 一种在前端测试页面的方法和装置 |
CN106648940A (zh) * | 2017-03-13 | 2017-05-10 | 北京百悟科技有限公司 | 远程过程调用方法及装置 |
CN107977316A (zh) * | 2017-12-21 | 2018-05-01 | 阿里巴巴集团控股有限公司 | 一种模拟远程过程调用的方法、客户端及系统 |
CN110489101A (zh) * | 2019-07-15 | 2019-11-22 | 北京字节跳动网络技术有限公司 | 接口模拟方法、系统、介质和电子设备 |
-
2020
- 2020-09-29 CN CN202011049384.8A patent/CN112256567A/zh not_active Withdrawn
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20020152456A1 (en) * | 2001-04-12 | 2002-10-17 | Nightingale Andrew Mark | Software and hardware simulation |
US20070277158A1 (en) * | 2006-02-24 | 2007-11-29 | International Business Machines Corporation | Method and apparatus for testing of business processes for Web services |
CN102063324A (zh) * | 2010-12-31 | 2011-05-18 | 杭州依赛通信有限公司 | 一种实现自动化编程的方法及系统 |
CN105138448A (zh) * | 2014-06-05 | 2015-12-09 | 北京畅游天下网络技术有限公司 | 一种在前端测试页面的方法和装置 |
CN106648940A (zh) * | 2017-03-13 | 2017-05-10 | 北京百悟科技有限公司 | 远程过程调用方法及装置 |
CN107977316A (zh) * | 2017-12-21 | 2018-05-01 | 阿里巴巴集团控股有限公司 | 一种模拟远程过程调用的方法、客户端及系统 |
CN110489101A (zh) * | 2019-07-15 | 2019-11-22 | 北京字节跳动网络技术有限公司 | 接口模拟方法、系统、介质和电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110198247B (zh) | 接口测试方法及系统 | |
CN104683386B (zh) | 可定制响应的桩服务实现方法及装置 | |
CN112104709B (zh) | 智能合约的处理方法、装置、介质及电子设备 | |
CN107592238A (zh) | 接口的自动测试方法及系统、服务终端、存储器 | |
CN101908015A (zh) | 一种基于构件生成测试案例的装置及方法 | |
CN110858172A (zh) | 一种自动化测试代码生成方法和装置 | |
CN109308254A (zh) | 一种测试方法、装置及测试设备 | |
CN110795697A (zh) | 逻辑表达式的获取方法、装置、存储介质以及电子装置 | |
JP2016510442A (ja) | トランスフォーム生成システム | |
CN113742005A (zh) | 一种平台对接方法和装置 | |
CN111125064A (zh) | 一种生成数据库模式定义语句的方法和装置 | |
CN201435074Y (zh) | 一种基于构件生成测试案例的装置 | |
CN111506298A (zh) | 一种基于json对象进行接口可视化配置的方法 | |
CN110109983A (zh) | 一种操作Redis数据库的方法和装置 | |
CN113778897A (zh) | 接口的自动测试方法、装置、设备及存储介质 | |
CN108694120A (zh) | 测试服务组件的方法和装置 | |
CN101136780A (zh) | 获取用户命令信息的方法、系统及用户命令注册的装置 | |
CN115994085A (zh) | 代码覆盖率的测试处理方法、装置、设备及存储介质 | |
CN112308573A (zh) | 智能客服方法及装置、存储介质、计算机设备 | |
CN112256567A (zh) | 一种远程调用模拟与测试系统 | |
CN114301970B (zh) | 服务调用方法、装置、电子设备及存储介质 | |
CN116244387A (zh) | 实体关系构建方法、装置、电子设备及存储介质 | |
CN115640279A (zh) | 一种数据血缘关系的构建方法和装置 | |
CN114185928A (zh) | 通用接口对接系统、方法、设备及存储介质 | |
CN114398152A (zh) | 接口仿真服务调用方法及装置 |
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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20210122 |
|
WW01 | Invention patent application withdrawn after publication |