CN112306881B - 模拟数据生成方法、装置、设备及存储介质 - Google Patents
模拟数据生成方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN112306881B CN112306881B CN202011205628.7A CN202011205628A CN112306881B CN 112306881 B CN112306881 B CN 112306881B CN 202011205628 A CN202011205628 A CN 202011205628A CN 112306881 B CN112306881 B CN 112306881B
- Authority
- CN
- China
- Prior art keywords
- interface
- data
- preset
- replaced
- analog
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 45
- 238000004088 simulation Methods 0.000 claims abstract description 309
- 230000008676 import Effects 0.000 claims description 31
- 238000004458 analytical method Methods 0.000 claims description 13
- 230000006870 function Effects 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 8
- 238000005516 engineering process Methods 0.000 abstract description 3
- 238000012360 testing method Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000011161 development Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 238000007667 floating Methods 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000007493 shaping process Methods 0.000 description 1
- 238000013522 software testing Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
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/3676—Test management for coverage analysis
-
- 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/3604—Software analysis for verifying properties of programs
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及大数据技术领域,公开了一种模拟数据生成方法、装置、设备及存储介质,用于提高模拟数据生成的准确性。模拟数据生成方法包括:按照接口配置请求进行接口配置,得到已配置的模拟接口,并将已配置的模拟接口保存至预设配置信息表中,预设配置信息表中包括多个模拟接口;按照模拟接口调用请求从多个模拟接口中确定目标模拟接口;采用目标模拟接口查询预设配置信息表,得到目标模拟数据模板;获取目标模拟数据模板对应的待替换数据,采用对应的待替换数据对目标模拟数据模板进行占位符替换,得到目标模拟数据,并发送目标模拟数据到终端。此外,本发明还涉及区块链技术,目标模拟数据可存储于区块链节点中。
Description
技术领域
本发明涉及大数据技术的遍历查询领域,尤其涉及一种模拟数据生成方法、装置、设备及存储介质。
背景技术
mock数据,又称为模拟数据,用于处于开发环境模拟接口返回的数据(用于开发状态后端还没给接口),不会影响生产环境,便于交互时不阻塞开发流程。在软件开发过程中,若调用的接口暂时无法提供,或是调用环境不通,一般通过调用模拟数据平台,或自定义模拟返回数据进行接口调试。在软件测试过程中,需要对被测接口的入参进行非空值和边界值覆盖测试,但这些测试案例数据编写不仅耗时,而且容易遗漏参数。
现有的模拟平台一般返回固定的模拟数据,也就是,模拟数据不能根据接口入参来进行动态调整。若根据入参条件返回不同的模拟数据,一般也采用配置多组模拟返回数据的方式,数据量大,不易管理。而采用模拟工具mockjs可以根据配置规则实现返回不同的模拟数据,但是mockjs是前端的模拟工具,具有一定的使用局限性,并且它也不能根据入参条件智能返回相匹配的模拟数据,导致生成模拟数据的准确性低和覆盖率低。
发明内容
本发明的主要目的在于解决现有的模拟工具生成模拟数据的准确性低和覆盖率低的问题。
为实现上述目的,本发明第一方面提供了一种模拟数据生成方法,包括:当接收到接口配置请求时,按照所述接口配置请求进行接口配置,得到已配置的模拟接口,并将所述已配置的模拟接口保存至预设配置信息表中,所述预设配置信息表中包括多个模拟接口;当接收到模拟接口调用请求时,按照所述模拟接口调用请求从所述多个模拟接口中确定目标模拟接口;采用所述目标模拟接口查询所述预设配置信息表,得到目标模拟数据模板;获取所述目标模拟数据模板对应的待替换数据,采用所述对应的待替换数据对所述目标模拟数据模板进行占位符替换,得到目标模拟数据,并发送所述目标模拟数据到终端,以使得所述终端展示并校验所述目标模拟数据。
可选的,在本发明第一方面的第一种实现方式中,所述当接收到接口配置请求时,按照所述接口配置请求进行接口配置,得到已配置的模拟接口,并将所述已配置的模拟接口保存至预设配置信息表中,得到多个模拟接口,包括:当接收到接口配置请求时,从所述接口配置请求中获取对应的接口标识和对应的参数配置信息;判断所述对应的接口标识是否存在于预设配置信息表中;若所述对应的接口标识存在于预设配置信息表中,则按照所述对应的接口标识和所述对应的参数配置信息进行接口更新,得到模拟接口地址;若所述对应的接口标识不存在于预设配置信息表中,则按照所述对应的接口标识和所述对应的参数配置信息设置模拟接口地址;获取待配置模板标识,采用所述待配置模板标识对所述模拟接口地址配置对应的模拟数据模板,得到已配置的模拟接口,并将所述已配置的模拟接口存储至所述预设配置信息表中,所述预设配置信息表中包括多个模拟接口,所述对应的模拟数据模板包括至少一个待替换占位符的接口返回数据。
可选的,在本发明第一方面的第二种实现方式中,所述当接收到模拟接口调用请求时,按照所述模拟接口调用请求从所述多个模拟接口中确定目标模拟接口,包括:当接收到模拟接口调用请求时,从所述模拟接口调用请求中获取对应的用户标识、对应的模拟接口地址和对应的接口访问参数;按照所述对应的用户标识查询预设的接口权限配置表,得到查询结果;判断所述查询结果是否为空值;当所述查询结果为空值时,生成提示信息,并将所述提示信息发送至终端,所述提示信息用于指示所述终端不具有接口访问权限信息;当所述查询结果不为空值时,按照所述对应的模拟接口地址和所述对应的接口访问参数从所述多个模拟接口中调用目标模拟接口。
可选的,在本发明第一方面的第三种实现方式中,所述获取所述目标模拟数据模板对应的待替换数据,采用所述对应的待替换数据对所述目标模拟数据模板进行占位符替换,得到目标模拟数据,并发送所述目标模拟数据到终端,以使得所述终端展示并校验所述目标模拟数据,包括:对所述目标模拟数据模板进行内容解析,得到初始模拟数据,所述初始模拟数据包括多个待替换占位符;对所述初始模拟数据中的各待替换占位符进行解析,得到各待替换占位符对应的待替换标识信息,并采用所述待替换标识信息生成对应的待替换数据;将所述对应的待替换数据填充至所述对应的待替换占位符中,得到目标模拟数据,并发送所述目标模拟数据到终端,以使得所述终端展示并校验所述目标模拟数据。
可选的,在本发明第一方面的第四种实现方式中,所述对所述初始模拟数据中的各待替换占位符进行解析,得到各待替换占位符对应的待替换标识信息,并采用所述待替换标识信息生成对应的待替换数据,包括:通过预设占位符规则对所述初始模拟数据中的各待替换占位符进行规则解析,得到各待替换占位符对应的待替换标识信息,所述预设占位符规则包括第一预设规则、第二预设规则、第三预设规则和第四预设规则;当所述待替换标识信息符合所述第一预设规则时,按照所述待替换标识信息调用预置的占位符函数,生成对应的待替换数据,所述第一预设规则用于指示按照第一预置字符和预设数据类型配置的占位符;当所述待替换标识信息符合所述第二预设规则时,获取所述待替换标识信息对应的输入参数值,并所述将对应的输入参数值设置为对应的待替换数据,所述第二预设规则用于指示按照第二预置字符和预设参数字符串配置的占位符;当所述待替换标识信息符合所述第三预设规则时,获取所述待替换标识信息对应的可执行代码,并将所述对应的可执行代码设置为对应的待替换数据,所述第三预设规则用于指示按照第三预置字符和预设函数标识字符串配置的占位符;当所述待替换标识信息符合所述第四预设规则时,获取并计算所述待替换标识信息对应的条件表达式,得到对应的待替换数据,所述第四预设规则用于指示按照所述第一预设规则及或运算符配置的占位符。
可选的,在本发明第一方面的第五种实现方式中,在所述当接收到接口配置请求时,按照所述接口配置请求进行接口配置,得到已配置的模拟接口,并将所述已配置的模拟接口保存至预设配置信息表中,所述预设配置信息表中包括多个模拟接口之前,所述模拟数据生成方法还包括:获取多个模拟数据模板,并将所述多个模拟数据模板导入至预设数据库中,得到多个导入结果,所述多个模拟数据模板包括与所述目标模拟接口关联的目标模拟数据模板,所述导入结果包括导入成功和导入失败;按照所述多个导入结果分别更新各模拟数据模板对应的导入状态;当所述对应的导入状态为预设值时,设置模板导入失败信息,并向终端发送所述模板导入失败信息,以使得所述终端按照所述模板导入失败信息重新上传导入失败的模拟数据模板。
可选的,在本发明第一方面的第六种实现方式中,所述获取多个模拟数据模板,并将所述多个模拟数据模板导入至预设数据库中,得到多个导入结果,所述多个模拟数据模板包括与所述目标模拟接口关联的目标模拟数据模板,所述导入结果包括导入成功和导入失败,包括:接收终端上传的多个模拟数据模板,所述多个模拟数据模板包括与所述目标模拟接口关联的目标模拟数据模板;判断各模拟数据模板对应的文件大小是否大于预置阈值;若所述对应的文件大小大于或者等于所述预置阈值,则将对应的模拟数据模板写入至第一预设消息队列中;若所述对应的文件大小小于所述预置阈值,则将对应的模拟数据模板写入至第二预设消息队列中;通过所述第一预设消息队列和所述第二预设消息队列将所述多个模拟数据模板分别导入至预设数据库中,得到多个导入结果,所述导入结果包括导入成功和导入失败。
本发明第二方面提供了一种模拟数据生成装置,包括:配置模块,当接收到接口配置请求时,用于按照所述接口配置请求进行接口配置,得到已配置的模拟接口,并将所述已配置的模拟接口保存至预设配置信息表中,得到多个模拟接口;确定模块,当接收到模拟接口调用请求时,用于按照所述模拟接口调用请求从所述多个模拟接口中确定目标模拟接口;查询模块,用于采用所述目标模拟接口查询预设配置信息表,得到目标模拟数据模板;生成模块,用于获取所述目标模拟数据模板对应的待替换数据,采用所述对应的待替换数据对所述目标模拟数据模板进行占位符替换,得到目标模拟数据,并发送所述目标模拟数据到终端,以使得所述终端展示并校验所述目标模拟数据。
可选的,在本发明第二方面的第一种实现方式中,所述配置模块具体用于:当接收到接口配置请求时,从所述接口配置请求中获取对应的接口标识和对应的参数配置信息;判断所述对应的接口标识是否存在于预设配置信息表中;若所述对应的接口标识存在于预设配置信息表中,则按照所述对应的接口标识和所述对应的参数配置信息进行接口更新,得到模拟接口地址;若所述对应的接口标识不存在于预设配置信息表中,则按照所述对应的接口标识和所述对应的参数配置信息设置模拟接口地址;获取待配置模板标识,采用所述待配置模板标识对所述模拟接口地址配置对应的模拟数据模板,得到已配置的模拟接口,并将所述已配置的模拟接口存储至所述预设配置信息表中,所述预设配置信息表中包括多个模拟接口,所述对应的模拟数据模板包括至少一个待替换占位符的接口返回数据。
可选的,在本发明第二方面的第二种实现方式中,所述确定模块具体用于:当接收到模拟接口调用请求时,从所述模拟接口调用请求中获取对应的用户标识、对应的模拟接口地址和对应的接口访问参数;按照所述对应的用户标识查询预设的接口权限配置表,得到查询结果;判断所述查询结果是否为空值;当所述查询结果为空值时,生成提示信息,并将所述提示信息发送至终端,所述提示信息用于指示所述终端不具有接口访问权限信息;当所述查询结果不为空值时,按照所述对应的模拟接口地址和所述对应的接口访问参数从所述多个模拟接口中调用目标模拟接口。
可选的,在本发明第二方面的第三种实现方式中,所述生成模块包括:解析单元,用于对所述目标模拟数据模板进行内容解析,得到初始模拟数据,所述初始模拟数据中包括多个待替换占位符;生成单元,用于对所述初始模拟数据中的各待替换占位符进行解析,得到各待替换占位符对应的待替换标识信息,并采用所述待替换标识信息生成对应的待替换数据;处理单元,用于将所述对应的待替换数据填充至所述对应的待替换占位符中,得到目标模拟数据,并发送所述目标模拟数据到终端,以使得所述终端展示并校验所述目标模拟数据。
可选的,在本发明第二方面的第四种实现方式中,所述生成单元具体用于:通过预设占位符规则对所述初始模拟数据中的各待替换占位符进行规则解析,得到各待替换占位符对应的待替换标识信息,所述预设占位符规则包括第一预设规则、第二预设规则、第三预设规则和第四预设规则;当所述待替换标识信息符合所述第一预设规则时,按照所述待替换标识信息调用预置的占位符函数,生成对应的待替换数据,所述第一预设规则用于指示按照第一预置字符和预设数据类型配置的占位符;当所述待替换标识信息符合所述第二预设规则时,获取所述待替换标识信息对应的输入参数值,并所述将对应的输入参数值设置为对应的待替换数据,所述第二预设规则用于指示按照第二预置字符和预设参数字符串配置的占位符;当所述待替换标识信息符合所述第三预设规则时,获取所述待替换标识信息对应的可执行代码,并将所述对应的可执行代码设置为对应的待替换数据,所述第三预设规则用于指示按照第三预置字符和预设函数标识字符串配置的占位符;当所述待替换标识信息符合所述第四预设规则时,获取并计算所述待替换标识信息对应的条件表达式,得到对应的待替换数据,所述第四预设规则用于指示按照所述第一预设规则和或运算符配置的占位符。
可选的,在本发明第二方面的第五种实现方式中,所述模拟数据生成装置还包括:导入模块,用于获取多个模拟数据模板,并将所述多个模拟数据模板导入至预设数据库中,得到多个导入结果,所述多个模拟数据模板包括与所述目标模拟接口关联的目标模拟数据模板,所述导入结果包括导入成功和导入失败;更新模块,用于按照所述多个导入结果分别更新各模拟数据模板对应的导入状态;发送模块,当所述对应的导入状态为预设值时,用于设置模板导入失败信息,并向终端发送所述模板导入失败信息,以使得所述终端按照所述模板导入失败信息重新上传导入失败的模拟数据模板。
可选的,在本发明第二方面的第六种实现方式中,所述导入模块具体用于:接收终端上传的多个模拟数据模板,所述多个模拟数据模板包括与所述目标模拟接口关联的目标模拟数据模板;判断各模拟数据模板对应的文件大小是否大于预置阈值;若所述对应的文件大小大于或者等于所述预置阈值,则将对应的模拟数据模板写入至第一预设消息队列中;若所述对应的文件大小小于所述预置阈值,则将对应的模拟数据模板写入至第二预设消息队列中;通过所述第一预设消息队列和所述第二预设消息队列将所述多个模拟数据模板分别导入至预设数据库中,得到多个导入结果,所述导入结果包括导入成功和导入失败。
本发明第三方面提供了一种模拟数据生成设备,包括:存储器和至少一个处理器,所述存储器中存储有指令;所述至少一个处理器调用所述存储器中的所述指令,以使得所述模拟数据生成设备执行上述的模拟数据生成方法。
本发明的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述的模拟数据生成方法。
本发明提供的技术方案中,当接收到接口配置请求时,按照所述接口配置请求进行接口配置,得到已配置的模拟接口,并将所述已配置的模拟接口保存至预设配置信息表中,所述预设配置信息表中包括多个模拟接口;当接收到模拟接口调用请求时,按照所述模拟接口调用请求从所述多个模拟接口中确定目标模拟接口;采用所述目标模拟接口查询所述预设配置信息表,得到目标模拟数据模板;获取所述目标模拟数据模板对应的待替换数据,采用所述对应的待替换数据对所述目标模拟数据模板进行占位符替换,得到目标模拟数据,并发送所述目标模拟数据到终端,以使得所述终端展示并校验所述目标模拟数据。本发明实施例中,通过占位符规则动态配置模拟接口的对应的模拟返回数据,然后根据预设好的识别规则识别待替换占位符,并且生成对应的替换数据后替换待替换占位符,得到模拟接口数据,提高了模拟数据生成的准确性和覆盖率。
附图说明
图1为本发明实施例中模拟数据生成方法的一个实施例示意图;
图2为本发明实施例中模拟数据生成方法的另一个实施例示意图;
图3为本发明实施例中模拟数据生成装置的一个实施例示意图;
图4为本发明实施例中模拟数据生成装置的另一个实施例示意图;
图5为本发明实施例中模拟数据生成设备的一个实施例示意图。
具体实施方式
本发明实施例提供了一种模拟数据生成方法、装置、设备及存储介质,用于通过占位符规则动态配置模拟接口的对应的模拟返回数据,提高模拟数据生成的准确性和覆盖率。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为便于理解,下面对本发明实施例的具体流程进行描述,请参阅图1,本发明实施例中模拟数据生成方法的一个实施例包括:
101、当接收到接口配置请求时,按照接口配置请求进行接口配置,得到已配置的模拟接口,并将已配置的模拟接口保存至预设配置信息表中,预设配置信息表中包括多个模拟接口。
其中,模拟接口,也就是mock接口,一般用于模拟测试请求并返回响应数据。以便于接口未联合调试对接之前,确保接口数据格式的准确性与一致性。具体的,当服务器接收到接口配置请求时,服务器从按照接口配置请求中获取对应的接口标识和对应的参数配置信息;服务器采用对应的接口标识和对应的参数配置信息配置模拟接口地址,进一步地,当接收到终端发送的接口配置请求时,其中,终端可展示接口配置界面,并接收用户对接口的配置操作指令,进而向服务器发送接口配置请求,服务器调用与接口标识匹配的代码框架,生成并保存模拟接口地址;服务器将模拟接口地址与模拟数据模板进行信息绑定,得到已配置的模拟接口;服务器将已配置的模拟接口保存至预设配置信息表中,预设配置信息表中包括多个模拟接口。例如,服务器将已配置的模拟接口A与模拟数据模板B进行信息绑定。
可以理解的是,本发明的执行主体可以为模拟数据生成装置,还可以是终端或者服务器,具体此处不做限定。本发明实施例以服务器为执行主体为例进行说明。
102、当接收到模拟接口调用请求时,按照模拟接口调用请求从多个模拟接口中确定目标模拟接口。
其中,模拟接口调用请求中包括请求方式、请求接口地址、入参字段和入参字段对应的字段值。具体的,当服务器接收到模拟接口调用请求时,服务器对模拟接口调用请求进行参数解析,得到请求接口地址、入参字段和入参字段对应的字段值,模拟接口调用请求中的请求接口地址可以为代理地址,例如,请求接口地址为接口域名地址;服务器按照请求接口地址(接口域名地址)匹配对应的网际互连协议地址和端口,并按照对应的网际互连协议地址和端口从多个模拟接口中确定目标模拟接口。例如,5个模拟接口A、B、C、D和E,服务器确定目标模拟接口为D。
103、采用目标模拟接口查询预设配置信息表,得到目标模拟数据模板。
其中,预设配置信息表中目标模拟接口与目标模拟数据模板一一对应,例如,目标模拟接口为http://localhost/a.php?a=1,服务器可采用模板编码或者模板路径将目标模拟数据模板与目标模拟接口进行数据关联。服务器可以按照预设数据格式封装目标模拟数据模板中的模拟数据,其中,预设数据格式可以为脚本语言对象简谱(javascriptobject notation,JSON)数据格式,也可以为数数据序列化格式YAML数据格式,具体此处不做限定。模拟数据为具有至少一个待替换占位符的接口返回数据。其中,待替换占位符可以为@string,也可以为@datetime,具体此处不做限定。进一步地,服务器还可以根据实际业务需求,对目标模拟数据模板进行更新。
104、获取目标模拟数据模板对应的待替换数据,采用对应的待替换数据对目标模拟数据模板进行占位符替换,得到目标模拟数据,并发送目标模拟数据到终端,以使得终端展示并校验目标模拟数据。
其中,终端用于调用目标模拟接口以获取目标模拟数据,并基于目标模拟数据判断接口调试是否成功。具体的,服务器对目标模拟数据模板进行占位符解析,得到初始模拟数据;然后服务器从解析后的初始模拟数据中查询待替换占位符,得到查询结果;服务器按照查询结果对已查询到的待替换占位符进行规则解析,并依据预设规则随机生成对应的待替换数据;服务器采用对应的待替换数据替换已查询到的占待替换位符;服务器将已替换过的占位符且组装后的目标模拟数据(mock数据)返回到终端,以使得终端展示并校验目标模拟数据。其中,目标模拟数据为模拟接口调用请求对应的返回数据。
需要说明的是,服务器对对应的待替换数据对目标模拟数据模板进行占位符替换,包括按照模拟接口调用请求中的入参返回目标模拟数据、返回可执行代码以及覆盖字段空值、字段超长、边界值覆盖场景,具体此处不做限定。
本发明实施例中,通过占位符规则动态配置模拟接口的对应的模拟返回数据,然后根据预设好的识别规则识别待替换占位符,并且生成对应的替换数据后替换待替换占位符,得到模拟数据,提高了模拟数据生成的准确性和覆盖率。
请参阅图2,本发明实施例中模拟数据生成方法的另一个实施例包括:
201、获取多个模拟数据模板,并将多个模拟数据模板导入至预设数据库中,得到多个导入结果,多个模拟数据模板包括与目标模拟接口关联的目标模拟数据模板,导入结果包括导入成功和导入失败。
其中,每个模拟数据模板包括多个占位符,每个占位符用于指示按照预设规则设置的可替换字符串。可选的,服务器接收终端上传的多个模拟数据模板,多个模拟数据模板包括与目标模拟接口关联的目标模拟数据模板;服务器判断各模拟数据模板对应的文件大小是否大于预置阈值,例如,预设阈值可为15兆字节,当各模拟数据模板对应的文件大小为14兆字节,服务器确定各模拟数据模板对应的文件大小小于预置阈值,当各模拟数据模板对应的文件大小为20或者15兆字节,服务器确定各模拟数据模板对应的文件大小大于或者等于预置阈值,预设阈值可以按照实际业务需求进行设置,具体此处不做限定;若对应的文件大小大于或者等于预置阈值,则服务器将对应的模拟数据模板写入至第一预设消息队列中;若对应的文件大小小于预置阈值,则服务器将对应的模拟数据模板写入至第二预设消息队列中;服务器通过第一预设消息队列和第二预设消息队列将多个模拟数据模板分别导入至预设数据库中,得到多个导入结果,导入结果包括导入成功和导入失败。
需要说明的是,预设消息队列可以为实时分布式消息队列,也可以为其他消息队列,具体此处不做限定,采用两个消息队列处理文件上传,提高了模拟数据模板的导入效率。
202、按照多个导入结果分别更新各模拟数据模板对应的导入状态。
进一步地,当各导入结果为导入成功时,服务器更新各模拟数据模板对应的导入状态为成功状态,当各导入结果为导入失败时,服务器更新各模拟数据模板对应的导入状态为失败状态。例如,服务器可采用1或者逻辑真true标识各模拟数据模板对应的导入状态为成功状态,服务器可采用0或者逻辑假false标识各模拟数据模板对应的导入状态为失败状态,具体此处不做限定。
203、当对应的导入状态为预设值时,设置模板导入失败信息,并向终端发送模板导入失败信息,以使得终端按照模板导入失败信息重新上传导入失败的模拟数据模板。
其中,预设值用于指示对应的导入状态为失败状态,进一步地,当对应的导入状态为预设值时,服务器设置模板导入失败信息,其中,模板导入失败信息包括错误状态码,例如,错误状态码为502,并向终端发送模板导入失败信息,以使得终端按照模板导入失败信息对导入失败的模拟数据模板进行检查更新后,将导入失败的模拟数据模板重新上传至服务器中。
204、当接收到接口配置请求时,按照接口配置请求进行接口配置,得到已配置的模拟接口,并将已配置的模拟接口保存至预设配置信息表中,预设配置信息表中包括多个模拟接口。
其中,接口配置请求包括对应的接口标识和对应的参数配置信息,对应的参数配置信息包括入参字段信息、出参字段信息和入参字段对应的入参字段规则。可选的,当接收到接口配置请求时,服务器从接口配置请求中获取对应的接口标识和对应的参数配置信息,其中,对应的接口标识与模拟接口一一对应,接口配置请求中各参数均与配置操作关联;服务器判断对应的接口标识是否存在于预设配置信息表中;若对应的接口标识存在于预设配置信息表中,则服务器按照对应的接口标识和对应的参数配置信息进行接口更新,得到模拟接口地址;若对应的接口标识不存在于预设配置信息表中,则服务器按照对应的接口标识和对应的参数配置信息设置模拟接口地址;服务器获取待配置模板标识,采用待配置模板标识对模拟接口地址配置对应的模拟数据模板,得到已配置的模拟接口,并将已配置的模拟接口存储至预设配置信息表中,预设配置信息表中包括多个模拟接口,对应的模拟数据模板包括至少一个待替换占位符的接口返回数据。
具体的,当接收到配置数据请求时,服务器根据接收到配置数据请求获取对应的模拟数据模板,其中,该对应的模拟数据模板包括至少一个待替换占位符的接口返回数据,该对应的接口返回数据可在终端中以页面形式进行显示,对应的模拟数据模板可采用标识信息进行标识,标识信息可以为文件路径信息,也可以为全球唯一标识信息,具体此处不做限定;服务器对模拟接口地址与对应的模拟数据模板进行信息绑定,得到已配置的模拟接口。进一步地,当接收到权限配置请求时,服务器从权限配置请求中获取用户信息,并对用户信息设置已配置的模拟接口的访问权限。
205、当接收到模拟接口调用请求时,按照模拟接口调用请求从多个模拟接口中确定目标模拟接口。
可选的,当服务器接收到模拟接口调用请求时,服务器从模拟接口调用请求中获取对应的用户标识、对应的模拟接口地址和对应的接口访问参数;服务器按照对应的用户标识查询预设的接口权限配置表,得到查询结果;服务器判断查询结果是否为空值;当查询结果为空值时,服务器生成提示信息,并将提示信息发送至终端中,提示信息用于指示终端不具有接口访问权限信息;当查询结果不为空值时,服务器按照对应的模拟接口地址和对应的接口访问参数从多个模拟接口中调用目标模拟接口。
206、采用目标模拟接口查询预设配置信息表,得到目标模拟数据模板。
该步骤206与步骤103的执行过程相似,具体此处不再赘述。
207、获取目标模拟数据模板对应的待替换数据,采用对应的待替换数据对目标模拟数据模板进行占位符替换,得到目标模拟数据,并发送目标模拟数据到终端,以使得终端展示并校验目标模拟数据。
具体的,服务器对目标模拟数据模板进行内容解析,得到初始模拟数据,初始模拟数据中包括多个待替换占位符;服务器对初始模拟数据中的各待替换占位符进行解析,得到各待替换占位符对应的待替换标识信息,并采用待替换标识信息生成对应的待替换数据;服务器将对应的待替换数据填充至对应的待替换占位符中,得到目标模拟数据,并发送目标模拟数据到终端,以使得终端展示并校验目标模拟数据。
可选的,首先,服务器通过预设占位符规则对初始模拟数据中的各待替换占位符进行规则解析,得到各待替换占位符对应的待替换标识信息,预设占位符规则包括第一预设规则、第二预设规则、第三预设规则和第四预设规则。
其次,当待替换标识信息符合第一预设规则时,服务器按照待替换标识信息调用预置的占位符函数,生成对应的待替换数据,第一预设规则用于指示按照第一预置字符和预设数据类型配置的占位符。其中,第一预置字符可为包含@字符和数字字符,预设数据类型包括字符串类型string、整型int、浮点型float,还可以包括布尔型bool,具体此处不做限定。例如,待替换标识信息为@string”返回一个随机的字符串,“@int”返回一个随机的整形数字,“@float”返回一个随机的浮点型数字,“@email”返回一个随机的邮箱。当服务器识别到该字符串后,服务器调用预置的占位符函数,随机生成一个字符串(对应的待替换数据)。服务器还可以设置数字字符标识字符串的长度,比如待替换标识信息为“@string(10)”,服务器也可以随机生成一个长度为10的字符串(对应的待替换数据)。还可以设置字符池,比如“@string(‘AB’,10)”,服务器将‘AB’两个字符中随机生成一个长度为10的字符串。另外,服务器还可以设置表示生成字符串长度概率的字符串,比如待替换标识信息为“@string(0,10,0.3,0.4)”,第一个参数代表生成字符串的最小长度为0,第二个参数代表最大长度为10,第三个参数代表生成最小长度的概率为0.3,第四个参数代表生成最大长度的概率为0.4。通过这样的配置,可在一定数量的调用请求次数下,比如调用1000次,大概300次的调用请求获取该字段的值为空字符串,大概400次的调用请求获取该字段的值为长度10的随机字符串,其他剩余300次左右的调用请求获取长度从1到9的随机字符串。能够覆盖字段的边界值测试,用于测试字段为空或字段超长情况下的接口响应。
然后,当待替换标识信息符合第二预设规则时,服务器获取待替换标识信息对应的输入参数值,并将对应的输入参数值设置为对应的待替换数据,第二预设规则用于指示按照第二预置字符和预设参数字符串配置的占位符。其中,第二预置字符可为包含$或者“${req”的占位符,这类型的占位符可以根据读取模拟接口入参的值生成动态数据(对应的待替换数据),预设参数字符串为包含入参标识的字符串,比如待替换标识信息为“${req.body.name}”,其中,req也可以为request,具体此处不做限定,服务器读取入参参数体中的name参数对应的属性值。该类占位符使得模拟数据与模拟接口的输入参数存在关联关系,并可以根据入参中的参数值动态调整模拟返回数据。
接着,当待替换标识信息符合第三预设规则时,服务器获取待替换标识信息对应的可执行代码,并将对应的可执行代码设置为对应的待替换数据,第三预设规则用于指示按照第三预置字符和预设函数标识字符串配置的占位符。预设函数标识字符串为“function{req}{}”,第三预置字符为$,那么待替换标识信息为“$function{req}{}”,该待替换占位符可以插入一段自定义的脚本js代码(对应的待替换数据),服务器通过js引擎调用待替换占位符,获取返回值后替换该待替换占位符。需要说明的是,若存在复杂的模拟数据生成规则,无法使用既定的占位符进行数据生成,那么就可以使用该种方式插入一段自定义的js代码来实现。比如入参中存在参数类型type,若type属性为1,那么服务器返回“A”,若type为2,那么服务器返回“B”。也就是判定入参参数值的情况下就可以使用该类型占位符。可以理解的是,第一预置字符、第二预置字符和第三预置字符可以相同,也可以不相同,具体此处不做限定。
最后,当待替换标识信息符合第四预设规则时,服务器获取并计算待替换标识信息对应的条件表达式,得到对应的待替换数据,第四预设规则用于指示按照第一预设规则和或运算符配置的占位符。符合第四预设规则的待替换占位符为包含“||”占位符,将第一预设规则及或运算符结合的占位符,以获取值和概率。服务器调用java开发工具包JDK中的Math.random()函数,得到一个0至1之间的值。然后判断该值是否小于配置中的概率,若是,则返回运算符“||”后配置的值,或不是,则返回运算符“||”前配置的值。例如待替换标识信息为“@string||null:0.1”,它表示有0.1的概率返回空值null,另外0.9的概率返回一个随机字符串(对应的待替换数据)。可以在满足一定调用次数的情况下,测试某字段为空时的接口响应情况。若需要在测试过程中,涵盖测试某个接口的字段是否为空,那么可以使用符合第四预设规则的待替换占位符配置测试数据的生成规则。比如将name字段的值配置成“@string||null:0.1”,那么进行了1000次调用请求后,其中就会有大约100次该字段返回null,另外900次返回随机字符串。这样就等于是在测试案例中涵盖了空值的测试情况。
本发明实施例中,通过占位符规则动态配置模拟接口的对应的模拟返回数据,然后根据预设好的识别规则识别待替换占位符,并且生成对应的替换数据后替换待替换占位符,得到模拟接口数据,模拟接口数据包括字段空值、字段超长、边界值覆盖场景,提高了模拟数据生成的准确性和覆盖率。
上面对本发明实施例中模拟数据生成方法进行了描述,下面对本发明实施例中模拟数据生成装置进行描述,请参阅图3,本发明实施例中模拟数据生成装置的一个实施例包括:
配置模块301,当接收到接口配置请求时,用于按照接口配置请求进行接口配置,得到已配置的模拟接口,并将已配置的模拟接口保存至预设配置信息表中,预设配置信息表中包括多个模拟接口;
确定模块302,当接收到模拟接口调用请求时,用于按照模拟接口调用请求从多个模拟接口中确定目标模拟接口;
查询模块303,用于采用目标模拟接口查询预设配置信息表,得到目标模拟数据模板;
生成模块304,用于获取目标模拟数据模板对应的待替换数据,采用对应的待替换数据对目标模拟数据模板进行占位符替换,得到目标模拟数据,并发送目标模拟数据到终端,以使得终端展示并校验目标模拟数据。
进一步地,将目标模拟数据存储于区块链数据库中,具体此处不做限定。
本发明实施例中,通过占位符规则动态配置模拟接口的对应的模拟返回数据,然后根据预设好的识别规则识别待替换占位符,并且生成对应的替换数据后替换待替换占位符,得到模拟接口数据提高了模拟数据生成的准确性和覆盖率。
请参阅图4,本发明实施例中模拟数据生成装置的另一个实施例包括:
配置模块301,当接收到接口配置请求时,用于按照接口配置请求进行接口配置,得到已配置的模拟接口,并将已配置的模拟接口保存至预设配置信息表中,预设配置信息表中包括多个模拟接口;
确定模块302,当接收到模拟接口调用请求时,用于按照模拟接口调用请求从多个模拟接口中确定目标模拟接口;
查询模块303,用于采用目标模拟接口查询预设配置信息表,得到目标模拟数据模板;
生成模块304,用于获取目标模拟数据模板对应的待替换数据,采用对应的待替换数据对目标模拟数据模板进行占位符替换,得到目标模拟数据,并发送目标模拟数据到终端,以使得终端展示并校验目标模拟数据。
可选的,配置模块301还可以具体用于:
当接收到接口配置请求时,从接口配置请求中获取对应的接口标识和对应的参数配置信息;
判断对应的接口标识是否存在于预设配置信息表中;
若对应的接口标识存在于预设配置信息表中,则按照对应的接口标识和对应的参数配置信息进行接口更新,得到模拟接口地址;
若对应的接口标识不存在于预设配置信息表中,则按照对应的接口标识和对应的参数配置信息设置模拟接口地址;
获取待配置模板标识,采用待配置模板标识对模拟接口地址配置对应的模拟数据模板,得到已配置的模拟接口,并将已配置的模拟接口存储至预设配置信息表中,预设配置信息表中包括多个模拟接口,对应的模拟数据模板包括至少一个待替换占位符的接口返回数据。
可选的,确定模块302还具体用于:
当接收到模拟接口调用请求时,从模拟接口调用请求中获取对应的用户标识、对应的模拟接口地址和对应的接口访问参数;
按照对应的用户标识查询预设的接口权限配置表,得到查询结果;
判断查询结果是否为空值;
当查询结果为空值时,生成提示信息,并将提示信息发送至终端,提示信息用于指示终端不具有接口访问权限信息;
当查询结果不为空值时,按照对应的模拟接口地址和对应的接口访问参数从多个模拟接口中调用目标模拟接口。
可选的,生成模块304还包括:
解析单元3041,用于对目标模拟数据模板进行内容解析,得到初始模拟数据,初始模拟数据包括多个待替换占位符;
生成单元3042,用于对初始模拟数据中的各待替换占位符进行解析,得到各待替换占位符对应的待替换标识信息,并采用待替换标识信息生成对应的待替换数据;
处理单元3043,用于将对应的待替换数据填充至对应的待替换占位符中,得到目标模拟数据,并发送目标模拟数据到终端,以使得终端展示并校验目标模拟数据。
可选的,处理单元3043还可以具体用于:
通过预设占位符规则对初始模拟数据中的各待替换占位符进行规则解析,得到各待替换占位符对应的待替换标识信息,预设占位符规则包括第一预设规则、第二预设规则、第三预设规则和第四预设规则;
当待替换标识信息符合第一预设规则时,按照待替换标识信息调用预置的占位符函数,生成对应的待替换数据,第一预设规则用于指示按照第一预置字符和预设数据类型配置的占位符;
当待替换标识信息符合第二预设规则时,获取待替换标识信息对应的输入参数值,并将对应的输入参数值设置为对应的待替换数据,第二预设规则用于指示按照第二预置字符和预设参数字符串配置的占位符;
当待替换标识信息符合第三预设规则时,获取待替换标识信息对应的可执行代码,并将对应的可执行代码设置为对应的待替换数据,第三预设规则用于指示按照第三预置字符和预设函数标识字符串配置的占位符;
当待替换标识信息符合第四预设规则时,获取并计算待替换标识信息对应的条件表达式,得到对应的待替换数据,第四预设规则用于指示按照第一预设规则及或运算符配置的占位符。
可选的,模拟数据生成装置还包括:
导入模块305,用于获取多个模拟数据模板,并将多个模拟数据模板导入至预设数据库中,得到多个导入结果,多个模拟数据模板包括与目标模拟接口关联的目标模拟数据模板,导入结果包括导入成功和导入失败;
更新模块306,用于按照多个导入结果分别更新各模拟数据模板对应的导入状态;
发送模块307,当对应的导入状态为预设值时,用于设置模板导入失败信息,并向终端发送模板导入失败信息,以使得终端按照模板导入失败信息重新上传导入失败的模拟数据模板。
可选的,导入模块305还可以具体用于:
接收终端上传的多个模拟数据模板,多个模拟数据模板包括与目标模拟接口关联的目标模拟数据模板;
判断各模拟数据模板对应的文件大小是否大于预置阈值;
若对应的文件大小大于或者等于预置阈值,则将对应的模拟数据模板写入至第一预设消息队列中;
若对应的文件大小小于预置阈值,则将对应的模拟数据模板写入至第二预设消息队列中;
通过第一预设消息队列和第二预设消息队列将多个模拟数据模板分别导入至预设数据库中,得到多个导入结果,导入结果包括导入成功和导入失败。
本发明实施例中,通过占位符规则动态配置模拟接口的对应的模拟返回数据,然后根据预设好的识别规则识别待替换占位符,并且生成对应的替换数据后替换待替换占位符,得到模拟接口数据,模拟接口数据包括字段空值、字段超长、边界值覆盖场景,提高了模拟数据生成的准确性和覆盖率。
上面图3和图4从模块化的角度对本发明实施例中的模拟数据生成装置进行详细描述,下面从硬件处理的角度对本发明实施例中模拟数据生成设备进行详细描述。
图5是本发明实施例提供的一种模拟数据生成设备的结构示意图,该模拟数据生成设备500可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)510(例如,一个或一个以上处理器)和存储器520,一个或一个以上存储应用程序533或数据532的存储介质530(例如一个或一个以上海量存储设备)。其中,存储器520和存储介质530可以是短暂存储或持久存储。存储在存储介质530的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对模拟数据生成设备500中的一系列指令操作。更进一步地,处理器510可以设置为与存储介质530通信,在模拟数据生成设备500上执行存储介质530中的一系列指令操作。
模拟数据生成设备500还可以包括一个或一个以上电源540,一个或一个以上有线或无线网络接口550,一个或一个以上输入输出接口560,和/或,一个或一个以上操作系统531,例如Windows Serve,Mac OS X,Unix,Linux,FreeBSD等等。本领域技术人员可以理解,图5示出的模拟数据生成设备结构并不构成对模拟数据生成设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
本发明还提供一种计算机可读存储介质,该计算机可读存储介质可以为非易失性计算机可读存储介质,该计算机可读存储介质也可以为易失性计算机可读存储介质,所述计算机可读存储介质中存储有指令,当所述指令在计算机上运行时,使得计算机执行所述模拟数据生成方法的步骤。
本发明还提供一种模拟数据生成设备,所述模拟数据生成设备包括存储器和处理器,存储器中存储有指令,所述指令被处理器执行时,使得处理器执行上述各实施例中的所述模拟数据生成方法的步骤。
进一步地,所述计算机可读存储介质可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序等;存储数据区可存储根据区块链节点的使用所创建的数据等。
本发明所指区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。区块链可以包括区块链底层平台、平台产品服务层以及应用服务层等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种模拟数据生成方法,其特征在于,所述模拟数据生成方法包括:
当接收到接口配置请求时,按照所述接口配置请求进行接口配置,得到已配置的模拟接口,并将所述已配置的模拟接口保存至预设配置信息表中,所述预设配置信息表中包括多个模拟接口;
当接收到模拟接口调用请求时,按照所述模拟接口调用请求从所述多个模拟接口中确定目标模拟接口;
采用所述目标模拟接口查询所述预设配置信息表,得到目标模拟数据模板;
获取所述目标模拟数据模板对应的待替换数据,采用所述对应的待替换数据对所述目标模拟数据模板进行占位符替换,得到目标模拟数据,并发送所述目标模拟数据到终端,以使得所述终端展示并校验所述目标模拟数据;
所述获取所述目标模拟数据模板对应的待替换数据,采用所述对应的待替换数据对所述目标模拟数据模板进行占位符替换,得到目标模拟数据,并发送所述目标模拟数据到终端,以使得所述终端展示并校验所述目标模拟数据,包括:
对所述目标模拟数据模板进行内容解析,得到初始模拟数据,所述初始模拟数据包括多个待替换占位符;
对所述初始模拟数据中的各待替换占位符进行解析,得到各待替换占位符对应的待替换标识信息,并采用所述待替换标识信息生成对应的待替换数据;
将所述对应的待替换数据填充至所述对应的待替换占位符中,得到目标模拟数据,并发送所述目标模拟数据到终端,以使得所述终端展示并校验所述目标模拟数据;
所述对所述初始模拟数据中的各待替换占位符进行解析,得到各待替换占位符对应的待替换标识信息,并采用所述待替换标识信息生成对应的待替换数据,包括:
通过预设占位符规则对所述初始模拟数据中的各待替换占位符进行规则解析,得到各待替换占位符对应的待替换标识信息,所述预设占位符规则包括第一预设规则、第二预设规则、第三预设规则和第四预设规则;
当所述待替换标识信息符合所述第一预设规则时,按照所述待替换标识信息调用预置的占位符函数,生成对应的待替换数据,所述第一预设规则用于指示按照第一预置字符和预设数据类型配置的占位符;
当所述待替换标识信息符合所述第二预设规则时,获取所述待替换标识信息对应的输入参数值,并将所述对应的输入参数值设置为对应的待替换数据,所述第二预设规则用于指示按照第二预置字符和预设参数字符串配置的占位符;
当所述待替换标识信息符合所述第三预设规则时,获取所述待替换标识信息对应的可执行代码,并将所述对应的可执行代码设置为对应的待替换数据,所述第三预设规则用于指示按照第三预置字符和预设函数标识字符串配置的占位符;
当所述待替换标识信息符合所述第四预设规则时,获取并计算所述待替换标识信息对应的条件表达式,得到对应的待替换数据,所述第四预设规则用于指示按照所述第一预设规则及或运算符配置的占位符。
2.根据权利要求1所述的模拟数据生成方法,其特征在于,所述当接收到接口配置请求时,按照所述接口配置请求进行接口配置,得到已配置的模拟接口,并将所述已配置的模拟接口保存至预设配置信息表中,所述预设配置信息表中包括多个模拟接口,包括:
当接收到接口配置请求时,从所述接口配置请求中获取对应的接口标识和对应的参数配置信息;
判断所述对应的接口标识是否存在于预设配置信息表中;
若所述对应的接口标识存在于预设配置信息表中,则按照所述对应的接口标识和所述对应的参数配置信息进行接口更新,得到模拟接口地址;
若所述对应的接口标识不存在于预设配置信息表中,则按照所述对应的接口标识和所述对应的参数配置信息设置模拟接口地址;
获取待配置模板标识,采用所述待配置模板标识对所述模拟接口地址配置对应的模拟数据模板,得到已配置的模拟接口,并将所述已配置的模拟接口存储至所述预设配置信息表中,所述预设配置信息表中包括多个模拟接口,所述对应的模拟数据模板包括至少一个待替换占位符的接口返回数据。
3.根据权利要求1所述的模拟数据生成方法,其特征在于,所述当接收到模拟接口调用请求时,按照所述模拟接口调用请求从所述多个模拟接口中确定目标模拟接口,包括:
当接收到模拟接口调用请求时,从所述模拟接口调用请求中获取对应的用户标识、对应的模拟接口地址和对应的接口访问参数;
按照所述对应的用户标识查询预设的接口权限配置表,得到查询结果;
判断所述查询结果是否为空值;
当所述查询结果为空值时,生成提示信息,并将所述提示信息发送至终端,所述提示信息用于指示所述终端不具有接口访问权限信息;
当所述查询结果不为空值时,按照所述对应的模拟接口地址和所述对应的接口访问参数从所述多个模拟接口中调用目标模拟接口。
4.根据权利要求1-3中任意一项所述的模拟数据生成方法,其特征在于,在所述当接收到接口配置请求时,按照所述接口配置请求进行接口配置,得到已配置的模拟接口,并将所述已配置的模拟接口保存至预设配置信息表中,所述预设配置信息表中包括多个模拟接口之前,所述模拟数据生成方法还包括:
获取多个模拟数据模板,并将所述多个模拟数据模板导入至预设数据库中,得到多个导入结果,所述多个模拟数据模板包括与所述目标模拟接口关联的目标模拟数据模板,所述导入结果包括导入成功和导入失败;
按照所述多个导入结果分别更新各模拟数据模板对应的导入状态;
当所述对应的导入状态为预设值时,设置模板导入失败信息,并向终端发送所述模板导入失败信息,以使得所述终端按照所述模板导入失败信息重新上传导入失败的模拟数据模板。
5.根据权利要求4所述的模拟数据生成方法,其特征在于,所述获取多个模拟数据模板,并将所述多个模拟数据模板导入至预设数据库中,得到多个导入结果,所述多个模拟数据模板包括与所述目标模拟接口关联的目标模拟数据模板,所述导入结果包括导入成功和导入失败,包括:
接收终端上传的多个模拟数据模板,所述多个模拟数据模板包括与所述目标模拟接口关联的目标模拟数据模板;
判断各模拟数据模板对应的文件大小是否大于预置阈值;
若所述对应的文件大小大于或者等于所述预置阈值,则将对应的模拟数据模板写入至第一预设消息队列中;
若所述对应的文件大小小于所述预置阈值,则将对应的模拟数据模板写入至第二预设消息队列中;
通过所述第一预设消息队列和所述第二预设消息队列将所述多个模拟数据模板分别导入至预设数据库中,得到多个导入结果,所述导入结果包括导入成功和导入失败。
6.一种模拟数据生成装置,其特征在于,所述模拟数据生成装置包括:
配置模块,当接收到接口配置请求时,用于按照所述接口配置请求进行接口配置,得到已配置的模拟接口,并将所述已配置的模拟接口保存至预设配置信息表中,所述预设配置信息表中包括多个模拟接口;
确定模块,当接收到模拟接口调用请求时,用于按照所述模拟接口调用请求从所述多个模拟接口中确定目标模拟接口;
查询模块,用于采用所述目标模拟接口查询所述预设配置信息表,得到目标模拟数据模板;
生成模块,用于获取所述目标模拟数据模板对应的待替换数据,采用所述对应的待替换数据对所述目标模拟数据模板进行占位符替换,得到目标模拟数据,并发送所述目标模拟数据到终端,以使得所述终端展示并校验所述目标模拟数据;
所述生成模块包括:
解析单元,用于对所述目标模拟数据模板进行内容解析,得到初始模拟数据,所述初始模拟数据中包括多个待替换占位符;
生成单元,用于对所述初始模拟数据中的各待替换占位符进行解析,得到各待替换占位符对应的待替换标识信息,并采用所述待替换标识信息生成对应的待替换数据;
处理单元,用于将所述对应的待替换数据填充至所述对应的待替换占位符中,得到目标模拟数据,并发送所述目标模拟数据到终端,以使得所述终端展示并校验所述目标模拟数据;
所述生成单元具体用于:通过预设占位符规则对所述初始模拟数据中的各待替换占位符进行规则解析,得到各待替换占位符对应的待替换标识信息,所述预设占位符规则包括第一预设规则、第二预设规则、第三预设规则和第四预设规则;
当所述待替换标识信息符合所述第一预设规则时,按照所述待替换标识信息调用预置的占位符函数,生成对应的待替换数据,所述第一预设规则用于指示按照第一预置字符和预设数据类型配置的占位符;
当所述待替换标识信息符合所述第二预设规则时,获取所述待替换标识信息对应的输入参数值,并将所述对应的输入参数值设置为对应的待替换数据,所述第二预设规则用于指示按照第二预置字符和预设参数字符串配置的占位符;
当所述待替换标识信息符合所述第三预设规则时,获取所述待替换标识信息对应的可执行代码,并将所述对应的可执行代码设置为对应的待替换数据,所述第三预设规则用于指示按照第三预置字符和预设函数标识字符串配置的占位符;
当所述待替换标识信息符合所述第四预设规则时,获取并计算所述待替换标识信息对应的条件表达式,得到对应的待替换数据,所述第四预设规则用于指示按照所述第一预设规则及或运算符配置的占位符。
7.根据权利要求6所述的模拟数据生成装置,其特征在于,所述配置模块具体用于:
当接收到接口配置请求时,从所述接口配置请求中获取对应的接口标识和对应的参数配置信息;
判断所述对应的接口标识是否存在于预设配置信息表中;
若所述对应的接口标识存在于预设配置信息表中,则按照所述对应的接口标识和所述对应的参数配置信息进行接口更新,得到模拟接口地址;
若所述对应的接口标识不存在于预设配置信息表中,则按照所述对应的接口标识和所述对应的参数配置信息设置模拟接口地址;
获取待配置模板标识,采用所述待配置模板标识对所述模拟接口地址配置对应的模拟数据模板,得到已配置的模拟接口,并将所述已配置的模拟接口存储至所述预设配置信息表中,所述预设配置信息表中包括多个模拟接口,所述对应的模拟数据模板包括至少一个待替换占位符的接口返回数据。
8.根据权利要求6所述的模拟数据生成装置,其特征在于,所述确定模块具体用于:
当接收到模拟接口调用请求时,从所述模拟接口调用请求中获取对应的用户标识、对应的模拟接口地址和对应的接口访问参数;
按照所述对应的用户标识查询预设的接口权限配置表,得到查询结果;
判断所述查询结果是否为空值;
当所述查询结果为空值时,生成提示信息,并将所述提示信息发送至终端,所述提示信息用于指示所述终端不具有接口访问权限信息;
当所述查询结果不为空值时,按照所述对应的模拟接口地址和所述对应的接口访问参数从所述多个模拟接口中调用目标模拟接口。
9.一种模拟数据生成设备,其特征在于,所述模拟数据生成设备包括:存储器和至少一个处理器,所述存储器中存储有指令;
所述至少一个处理器调用所述存储器中的所述指令,以使得所述模拟数据生成设备执行如权利要求1-5中任意一项所述的模拟数据生成方法。
10.一种计算机可读存储介质,其上存储有指令,其特征在于,所述指令被处理器执行时实现如权利要求1-5中任意一项所述的模拟数据生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011205628.7A CN112306881B (zh) | 2020-11-02 | 2020-11-02 | 模拟数据生成方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011205628.7A CN112306881B (zh) | 2020-11-02 | 2020-11-02 | 模拟数据生成方法、装置、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112306881A CN112306881A (zh) | 2021-02-02 |
CN112306881B true CN112306881B (zh) | 2023-11-24 |
Family
ID=74333802
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011205628.7A Active CN112306881B (zh) | 2020-11-02 | 2020-11-02 | 模拟数据生成方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112306881B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112860356B (zh) * | 2021-02-10 | 2023-08-15 | 北京百度网讯科技有限公司 | 一种api调用控制方法、装置、电子设备和存储介质 |
CN113225379A (zh) * | 2021-03-31 | 2021-08-06 | 北京三快在线科技有限公司 | 一种http请求消息的发送方法及装置 |
CN113553519A (zh) * | 2021-06-23 | 2021-10-26 | 深圳平安智汇企业信息管理有限公司 | 接口地址的展示方法、装置、计算机设备及存储介质 |
CN113438134B (zh) * | 2021-06-30 | 2023-03-31 | 未鲲(上海)科技服务有限公司 | 请求报文处理方法、装置、服务器及介质 |
CN113472883A (zh) * | 2021-06-30 | 2021-10-01 | 平安国际智慧城市科技股份有限公司 | 基于区块链存储数据的方法、装置、设备及存储介质 |
CN114398294B (zh) * | 2022-03-25 | 2022-08-05 | 北京锐融天下科技股份有限公司 | 一种测试方法、装置、电子设备及存储介质 |
CN115118688B (zh) * | 2022-08-29 | 2022-11-04 | 中航信移动科技有限公司 | 基于消息模板进行消息发送的方法、存储介质和电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6195665B1 (en) * | 1996-03-05 | 2001-02-27 | Tomorrow's Software, L.L.C. | Digital electrical computer apparatus, and methods for making and using the same, for template building, loading, and viewing |
GB201413935D0 (en) * | 2013-08-08 | 2014-09-17 | Palantir Technologies Inc | Templates system for custom document generation |
CN109359149A (zh) * | 2018-10-08 | 2019-02-19 | 网宿科技股份有限公司 | 一种模拟测试方法及相关装置 |
CN109460266A (zh) * | 2018-10-29 | 2019-03-12 | 无锡华云数据技术服务有限公司 | 一种构造软件模拟数据的方法及装置 |
CN110569159A (zh) * | 2019-09-05 | 2019-12-13 | 深圳前海微众银行股份有限公司 | 挡板生成方法、装置、设备及计算机存储介质 |
CN111782330A (zh) * | 2020-07-07 | 2020-10-16 | 赞同科技股份有限公司 | 一种基于Web应用的页面数据获取方法、装置及设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9473356B2 (en) * | 2013-09-30 | 2016-10-18 | Oracle International Corporation | Automatic configuration of applications based on host metadata using application-specific templates |
-
2020
- 2020-11-02 CN CN202011205628.7A patent/CN112306881B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6195665B1 (en) * | 1996-03-05 | 2001-02-27 | Tomorrow's Software, L.L.C. | Digital electrical computer apparatus, and methods for making and using the same, for template building, loading, and viewing |
GB201413935D0 (en) * | 2013-08-08 | 2014-09-17 | Palantir Technologies Inc | Templates system for custom document generation |
CN109359149A (zh) * | 2018-10-08 | 2019-02-19 | 网宿科技股份有限公司 | 一种模拟测试方法及相关装置 |
CN109460266A (zh) * | 2018-10-29 | 2019-03-12 | 无锡华云数据技术服务有限公司 | 一种构造软件模拟数据的方法及装置 |
CN110569159A (zh) * | 2019-09-05 | 2019-12-13 | 深圳前海微众银行股份有限公司 | 挡板生成方法、装置、设备及计算机存储介质 |
CN111782330A (zh) * | 2020-07-07 | 2020-10-16 | 赞同科技股份有限公司 | 一种基于Web应用的页面数据获取方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN112306881A (zh) | 2021-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112306881B (zh) | 模拟数据生成方法、装置、设备及存储介质 | |
CN110287109B (zh) | 协议接口的测试方法、装置、计算机设备及其存储介质 | |
CN110221982B (zh) | 业务系统的性能测试方法、装置、设备及可读存储介质 | |
CN112287009A (zh) | 接口调用和接口数据入库方法、装置、设备及存储介质 | |
CN109726108B (zh) | 基于模拟数据的前端代码测试方法、装置、系统和介质 | |
CN106681921A (zh) | 数据参数化的实现方法和装置 | |
CN110955409B (zh) | 在云平台上创建资源的方法和装置 | |
CN112667240A (zh) | 程序代码转换方法及相关设备 | |
CN110046155B (zh) | 特征数据库的更新、数据特征的确定方法、装置及设备 | |
CN112769706B (zh) | 组件化路由方法及系统 | |
CN111026634A (zh) | 一种接口自动化测试系统、方法、装置及存储介质 | |
CN114035827A (zh) | 应用程序更新方法、装置、设备及存储介质 | |
CN115599359A (zh) | 一种代码生成方法、装置、设备及介质 | |
CN113590593A (zh) | 数据表信息的生成方法和装置、存储介质及电子装置 | |
CN112181822A (zh) | 一种测试方法和应用程序的启动耗时测试方法 | |
CN116668520A (zh) | 一种基于网关的服务编排方法、系统、设备及存储介质 | |
CN113342353B (zh) | 一种mock数据生成方法和装置 | |
Zilhão et al. | A Modular Tool for Benchmarking loT Publish-Subscribe Middleware | |
CN111400623B (zh) | 用于搜索信息的方法和装置 | |
CN114124766A (zh) | 基于模拟数据的测试方法及装置 | |
CN111866139A (zh) | 一种基于物联网的传感器消息处理方法及系统 | |
CN112199229A (zh) | 数据处理方法、装置、设备和存储介质 | |
CN112181802A (zh) | 测试方法及装置 | |
CN111078571A (zh) | 模拟响应的测试方法、终端设备及计算机可读存储介质 | |
CN105677453B (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 | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20231102 Address after: No.72, Xinhe Road, shangmugu community, Pinghu street, Longgang District, Shenzhen, Guangdong 518000 Applicant after: Jin Luen Hing Electronic (Shenzhen) Co.,Ltd. Address before: Room 201, building a, No.1 Qianwan 1st Road, Shenzhen Hong Kong cooperation zone, Shenzhen, Guangdong Province (settled in Shenzhen Qianhai business secretary Co., Ltd.) Applicant before: PING AN PUHUI ENTERPRISE MANAGEMENT Co.,Ltd. |
|
TA01 | Transfer of patent application right | ||
GR01 | Patent grant | ||
GR01 | Patent grant |