CN117271309A - 业务测试方法、系统、电子设备和存储介质 - Google Patents
业务测试方法、系统、电子设备和存储介质 Download PDFInfo
- Publication number
- CN117271309A CN117271309A CN202311065072.XA CN202311065072A CN117271309A CN 117271309 A CN117271309 A CN 117271309A CN 202311065072 A CN202311065072 A CN 202311065072A CN 117271309 A CN117271309 A CN 117271309A
- Authority
- CN
- China
- Prior art keywords
- component
- service
- data
- testing
- loading
- 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.)
- Pending
Links
- 238000012360 testing method Methods 0.000 title claims abstract description 198
- 238000000034 method Methods 0.000 claims abstract description 37
- 238000000547 structure data Methods 0.000 claims description 11
- 238000012545 processing Methods 0.000 claims description 9
- 238000010276 construction Methods 0.000 claims description 8
- 238000012795 verification Methods 0.000 claims description 8
- 238000013522 software testing Methods 0.000 abstract description 2
- 230000006870 function Effects 0.000 description 18
- 238000010586 diagram Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000004590 computer program Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 230000013011 mating Effects 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000013524 data verification Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- 230000008676 import Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012423 maintenance 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
- 230000010076 replication Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000010998 test method 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/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
-
- 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/3692—Test management for test results analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44521—Dynamic linking or loading; Link editing at or after load time, e.g. Java class loading
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明涉及一种业务测试方法、系统、电子设备和存储介质,涉及软件测试领域。所述方法包括:获取并启动目标组件,所述目标组件为对待测试业务进行测试时所需要的开源组件;根据预设数据对所述目标组件进行加载;根据加载后的目标组件对所述待测试业务进行测试,得到测试结果;对所述测试结果进行验证。上述方法可以将测试环境转移到业务测试系统内部,降低业务测试时对外部环境基础服务的依赖性,提高业务测试效率。
Description
技术领域
本发明涉及软件测试领域,特别是涉及一种业务测试方法、系统、电子设备和存储介质。
背景技术
单元测试(unit testing)是指对业务软件中的最小可测试单元进行检查和验证,单元测试作为每个开发人员在开发功能时所必须执行的操作,可以有效的检测业务开发功能的正确性。
在目前的中大型项目开发中,一个业务功能点的单元测试可能会需要多个其他组件的配合,所以在真正测试某一单元的功能时,往往需要先开启待测试单元所需要的配合组件的服务,对外部环境基础服务的依赖性较强,当外部环境基础服务不能即使被调用时,就会影响项目测试进度。目前,虽然存在用待测试单元所需要的配合组件的模拟数据来代替待测试单元所需要的配合组件的真实数据的方法,也就是将待测试单元所需要的配合组件功能Mock掉,但是此方式需要大量的Mock代码支持。
由此可知,现有业务单元测试方法的测试效率不高。
发明内容
基于此,有必要针对现有业务单元测试方法的测试效率不高的问题,提供一种测试方法、系统、电子设备和存储介质。
基于上述目的,第一方面,本申请提出了一种业务测试方法,所述方法包括:获取并启动目标组件,所述目标组件为对待测试业务进行测试时所需要的开源组件;根据预设数据对所述目标组件进行加载;根据加载后的目标组件对所述待测试业务进行测试,得到测试结果;对所述测试结果进行验证。
可选地,所述目标组件包括基于分布式协调服务的第一组件、基于缓存服务的第二组件和基于嵌入式数据库的第三组件,所述第一组件、第二组件和第三组件为内嵌式组件。
可选地,所述预设数据包括对应于所述第一组件的第一数据,所述根据预设数据对所述目标组件进行加载,包括:创建与所述第一组件的连接;加载所述第一数据,根据预设的第一格式将所述第一数据写入所述第一组件。
可选地,所述预设数据包括对应于所述第二组件的第二数据,所述根据预设数据对所述目标组件进行加载,包括:创建与所述第二组件的连接;加载所述第二数据,根据预设的第二格式将所述第二数据写入所述第二组件。
可选地,所述预设数据包括对应于所述第三组件的第三数据,所述第三数据包括内容信息和格式信息,所述根据预设数据对所述目标组件进行加载,包括:扫描所述第三数据的格式信息,得到表结构数据;根据所述表结构数据得到建表语句;将所述建表语句添加到所述第三组件中,得到具有表结构的第三组件;将所述第三数据的内容信息写入所述具有表结构的第三组件。
可选地,所述根据预设数据对所述目标组件进行加载包括:通过并行处理的方式分别对所述第一组件、第二组件和第三组件进行加载。
可选地,在对所述测试结果进行验证之后,所述方法还包括:断开与所述目标组件的连接,从所述目标组件中删除业务测试的相关数据。
第二方面,还提供了一种业务测试系统,所述业务测试系统包括:测试环境创建层,用于获取并启动目标组件,所述目标组件为对待测试业务进行测试时所需要的开源组件;数据加载层,用于根据预设数据对所述目标组件进行加载;业务测试层,用于根据加载后的目标组件对所述待测试业务进行测试,得到测试结果;结果验证层,用于对所述测试结果进行验证。
第三方面,还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行第一方面所述的方法的步骤。
第四方面,还提供了一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行第一方面任一项所述的方法的步骤。
总的来说,本申请的有益效果至少在于:
提供的一种业务测试方法,将对待测试业务进行测试时所需要的开源组件作为目标组件,通过获取并启动目标组件,并根据预设数据对目标组件进行加载,为待测试业务的测试提供可依赖的测试环境,根据加载后的目标组件对待测试业务进行测试,得到测试结果,再对测试结果进行验证。可将测试环境转移到业务测试系统内部,降低业务测试时对外部环境基础服务的依赖性,提高业务测试效率。
附图说明
图1为一个实施例中提供的业务测试方法的实施环境图;
图2为一个实施例中业务测试方法的流程图;
图3为一个实施例中业务测试系统的结构框图;
图4为一个实施例所提供的一种电子设备的示意图;
图5为一个实施例所提供的计算机可读存储介质的示意图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1为一个实施例中提供的业务测试方法的实施环境图,如图1所示,在该实施环境中,包括计算机设备110以及终端120。
计算机设备110可以是服务器,计算机设备110与终端120可以通过蓝牙、USB(Universal Serial Bus,通用串行总线)或者其他通讯连接方式进行连接,本发明在此不做限制。
计算机设备110提供处理、数据库、通讯设施的业务点。服务器可以是整体式服务器,跨多计算机,计算机数据中心的分散式服务器,云服务器,或者部署在云端的服务器集群等。服务器可以是各种类型的,例如但不限于,网络服务器,新闻服务器,邮件服务器,消息服务器,广告服务器,文件服务器,应用服务器,交互服务器,数据库服务器,或代理服务器。在一些实施例中,每个服务器可以包括硬件,软件,或用于执行服务器所支持或实现的合适功能的内嵌逻辑组件或两个或多个此类组件的组合。例如,服务器是刀片服务器、云端服务器等,或者可以是由多台服务器组成的服务器群组,可以包括上述类型的服务器中的一种或多种等等。
本实施例中,终端120例如是便携式电脑、平板电脑、掌上电脑等,但并不局限于此。终端120上提供数据接口,可供开发者导入与业务检测相关的业务数据。
图2为一种业务测试方法的步骤流程图,本实施例的业务测试方法可以由服务器执行,参考图2,本实施例的业务测试方法包括如下步骤S201~S204:
S201、获取并启动目标组件。
在一个例子中,对一个业务进行测试时常常需要其他组件的计算结果作为业务测试的参数,或者需要采用其他组件的功能,因此,在真正测试某一业务员单元的功能时,往往需要先开启待测试业务进行测试时所需要的配合组件的服务,也就是说待测试业务的测试依赖配合组件所组成的测试环境。对于此,本实施例采用调用配合组件服务的开源组件的方式,来获取外部配合组件的功能,将配合组件的服务引入到业务测试内部,因此,本实施例首先获取目标组件,目标组件为对待测试业务进行测试时所需要的开源组件。在获取目标组件之后,目标组件共同组成待测试业务的测试环境,满足待测试业务测试时所需要的功能。
本实施例的目标组件的具体功能可以由待测试业务所需要的功能来确定,也可以根据多个待测试业务的通用功能,创建固定的、具有通用性的测试环境。
在一个例子中,目标组件包括基于分布式协调服务的第一组件、基于缓存服务的第二组件和基于嵌入式数据库的第三组件,所述第一组件、第二组件和第三组件为内嵌式组件。
本实施例中,分布式协调服务可以是Zookeeper,Zookeeper是一个分布式的、开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。Zookeeper包含一个简单的原语集,提供Java和C的接口,可以封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。
缓存服务可以是redis,redis是一个key-value存储系统,支持存储的value类型相对更多,包括string(字符串)、list(链表)、set(集合)、zset(sorted set--有序集合)和hash(哈希类型),redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现主从同步,数据可以从主服务器向任意数量的从服务器上同步,从服务器可以是关联其他从服务器的主服务器。这使得Redis可执行单层树复制。存盘可以有意无意的对数据进行写操作。由于完全实现了发布/订阅机制,使得从数据库在任何地方同步树时,可订阅一个频道并接收主服务器完整的消息发布记录,且为了保证效率,redis数据都是缓存在内存中,可以在一些场合对关系数据库起到很好的补充作用。
嵌入式数据库可以是H2数据库,H2数据库是一个Java编写的关系型数据库,是创建在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。H2数据库可以被嵌入Java应用程序中使用,或者作为一个单独的数据库服务器运行。
本实施例可通过分布式协调服务Zookeeper来实现测试环境协调功能,通过缓存服务redis实现待测试业务的测试数据的读写,且对嵌入式数据库H2起到补充作用,通过H2数据库可以进行待测试业务的数据处理。进而为待测试业务的测试过程提供稳定的测试环境。
其中,分布式协调服务Zookeeper、缓存服务redis和嵌入式数据库H2都具有开源的内嵌式服务组件可供使用,三者的开源组件分别为第一组件embedded-zookeeper、第二组件embedded-redis和第三组件embedded-H2,因此,本实施例可以通过调用embedded-zookeeper、embedded-redis和embedded-H2,将以上三个开源组件引入到业务测试系统中,其中,业务测试系统为对待测试业务进行测试的系统。
当业务测试系统中引入embedded-zookeeper、embedded-redis和embedded-H2之后,便可以在业务测试系统中启动这些组件,启动组件时,采用并行启动的方式对三者进行启动,即同时启动第一组件、第二组件和第三组件,可以加快启动速度,提高系统效率。
可以理解的是,当三个组件被成功启动后,业务测试系统就拥有了分布式协调服务Zookeeper、缓存服务redis和嵌入式数据库H2的功能,为待测试业务的测试提供可依赖的测试环境。
S202、根据预设数据对目标组件进行加载。
可以理解的是,当启动embedded-zookeeper、embedded-redis和embedded-H2之后,这些组件虽然具有对应的功能,但是不存在具体的数据,还不能实现业务测试,需要加载与业务测试相关的基础数据。因此,本实施例中,根据预设数据对目标组件进行加载。预设数据也就是与业务测试相关的基础数据,预设数据可以由开发人员提供。
本实施例中,不同的开源组件对应的预设数据不同,预设数据包括对应于第一组件的第一数据、对应于第二组件的第二数据和对应于第三组件的第三数据,且对应于不同的数据,加载的过程也有所不同。
本实施例中,预设数据包括对应于所述第一组件的第一数据,根据预设数据对目标组件进行加载,包括:创建与第一组件的连接,加载第一数据,根据预设的第一格式将第一数据写入第一组件。
本实施例中,预设数据包括对应于第二组件的第二数据,根据预设数据对目标组件进行加载,包括:创建与第二组件的连接;加载第二数据,根据预设的第二格式将第二数据写入第二组件。
其中,第一格式为符合第一组件运行时的文件格式要求,以使得基础数据能在第一组件中正常运行。第二格式为符合第二组件运行时的文件格式要求,以使得基础数据能在第二组件中正常运行。
本实施例中,预设数据包括对应于第三组件的第三数据,第三数据包括内容信息和格式信息,根据预设数据对目标组件进行加载,包括:扫描第三数据的格式信息,得到表结构数据;根据表结构数据得到建表语句;将建表语句添加到第三组件中,得到具有表结构的第三组件;将第三数据的内容信息写入具有表结构的第三组件。
可以理解的是,由于第三组件的H2数据库中可能不存在于预设的第三数据对应的数据格式,因此,本实施例首先扫描第三数据的格式信息,例如,第三数据是sql.xml文件,则扫描该sql.xml文件,得到包括表字段名称和类型的表结构数据,根据表字段名称和类型生成建表语句,建表语句用于生成包含表字段名称和类型的表结构,再将该表结构添加到第三组件中,此时的第三组件就具有了能够写入第三数据的内容信息的表结构,将第三数据的内容信息写入具有表结构的第三组件中,也就是将第三数据的内容信息填充到表结构中,如此,即可得到一个具有业务测试数据的第三组件。
需要说明的是,为了提高数据加载的速度,本实施例通过并行处理的方式分别对所述第一组件、第二组件和第三组件进行加载。
根据以上方法即可将第一数据、第二数据、第三数据分别写入第一组件、第二组件和第三组件中,此时业务测试所依赖的基础组件和数据均已准备完毕,可以进行后续业务测试。
S203、根据加载后的目标组件对待测试业务进行测试,得到测试结果。
以上步骤S201和S202为测试提供了可依赖的环境,测试过程可通过执行测试代码来实现,其中,测试代码可由开发人员基于待测试业务的特定的业务场景来编写。例如,待测试业务为用户的消费业务,则测试代码可包括用户的消费业务的测试用例,通过执行测试用例,得到运行日志和报告,根据运行日志和报告得到测试结果。
S204、对测试结果进行验证。
在业务测试完成后,需要对测试完成的业务进行结果数据验证,例如,通过设置验证数据,将测试结果的数据与验证数据对比,来检验测试结果的错误率,以提高业务检测的严谨度。
需要说明的是,当一次业务测试完成之后,会有数据残留,而为了保障下一次业务测试的效率,本实施例在对测试结果进行验证之后,还包括:断开与目标组件的连接,从目标组件中删除业务测试的相关数据。
例如,当步骤S204对测试结果验证结束之后,断开与embedded-zookeeper、embedded-redis和embedded-H2的连接,从embedded-zookeeper中删除第一数据,从embedded-redis中删除第二数据,从embedded-H2中删除第三数据。以此减少业务测试系统的数据残留,当进行下一次的业务测试时,直接使用业务测试系统即可。
以上为本实施例提供的一种业务测试方法,将对待测试业务进行测试时所需要的开源组件作为目标组件,通过获取并启动目标组件,并根据预设数据对目标组件进行加载,为待测试业务的测试提供可依赖的测试环境,根据加载后的目标组件对待测试业务进行测试,得到测试结果,再对测试结果进行验证。可将测试环境转移到业务测试系统内部,降低业务测试时对外部环境基础服务的依赖性,提高业务测试效率。
图3提高一种业务测试系统的框架图,该业务测试系统可以集成于上述的计算机设备110中,该业务测试系统用于执行上述实施例所述的业务测试方法,参考图3,该业务测试系统300包括:测试环境创建层301、数据加载层302、业务测试层303、结果验证层304。
测试环境创建层301用于获取并启动目标组件,目标组件为对待测试业务进行测试时所需要的开源组件。
数据加载层302用于根据预设数据对所述目标组件进行加载。
业务测试层303用于根据加载后的目标组件对所述待测试业务进行测试,得到测试结果。
结果验证层304用于对所述测试结果进行验证。
本实施例的测试环境创建层通过在测试系统框架中引入开源的内嵌式组件服务,将基础组件服务作为业务测试框架的一部分,对待测试业务进行测试时,不需要等待外部环境组件的开启,即可在业务测试框架内部执行测试程序,可以避免在业务测试中对外部环境基础服务的依赖。
在一个实施例中,目标组件包括基于分布式协调服务的第一组件embedded-zookeeper、基于缓存服务的第二组件embedded-redis和基于嵌入式数据库的第三组件embedded-H2,所述第一组件、第二组件和第三组件为内嵌式组件。则测试环境创建层可提供业务测试的依赖环境,可将测试环境转移到业务测试系统内部,降低业务测试时对外部环境基础服务的依赖性,提高业务测试效率。
在一个实施例中,预设数据包括对应于所述第一组件的第一数据,数据加载层302执行的根据预设数据对所述目标组件进行加载,包括:创建与所述第一组件的连接;加载所述第一数据,根据预设的第一格式将所述第一数据写入所述第一组件。
在一个实施例中,所述预设数据包括对应于所述第二组件的第二数据,数据加载层302执行的根据预设数据对所述目标组件进行加载,包括:创建与所述第二组件的连接;加载所述第二数据,根据预设的第二格式将所述第二数据写入所述第二组件。
在一个实施例中,预设数据包括对应于所述第三组件的第三数据,所述第三数据包括内容信息和格式信息,数据加载层302执行的根据预设数据对所述目标组件进行加载,包括:扫描所述第三数据的格式信息,得到表结构数据;根据所述表结构数据得到建表语句;将所述建表语句添加到所述第三组件中,得到具有表结构的第三组件;将所述第三数据的内容信息写入所述具有表结构的第三组件。
在一个实施例中,数据加载层302执行的根据预设数据对所述目标组件进行加载包括:通过并行处理的方式分别对所述第一组件、第二组件和第三组件进行加载。
在一个实施例中,结果验证层304用于在对所述测试结果进行验证之后,所述方法还包括:断开与所述目标组件的连接,从所述目标组件中删除业务测试的相关数据。
本申请的上述实施例提供的业务测试系统与本申请实施例提供的业务测试方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果,将对待测试业务进行测试时所需要的开源组件作为目标组件,创建待测试业务的可依赖的测试环境,启动目标组件后根据预设数据对目标组件进行加载,根据加载后的目标组件对待测试业务进行测试,得到测试结果,再对测试结果进行验证。可将测试环境转移到业务测试系统内部,降低业务测试时对外部环境基础服务的依赖性,提高业务测试效率。
本申请实施方式还提供一种与前述实施方式所提供的业务测试方法对应的电子设备,以执行上述业务测试方法。
在一个实施例中,电子设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现以下步骤:获取并启动目标组件,所述目标组件为对待测试业务进行测试时所需要的开源组件;根据预设数据对所述目标组件进行加载;根据加载后的目标组件对所述待测试业务进行测试,得到测试结果;对所述测试结果进行验证。
请参考图4,其示出了本申请的一些实施方式所提供的一种电子设备的示意图。如图4所示,所述电子设备20包括:处理器200,存储器201,总线202和通信接口203,所述处理器200、通信接口203和存储器201通过总线202连接;所述存储器201中存储有可在所述处理器200上运行的计算机程序,所述处理器200运行所述计算机程序时执行本申请前述任一实施方式所提供的业务测试方法。
其中,存储器201可能包含高速随机存取存储器(RAM:Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。通过至少一个通信接口203(可以是有线或者无线)实现该系统网元与至少一个其他网元之间的通信连接,可以使用互联网、广域网、本地网、城域网等。
总线202可以是ISA总线、PCI总线或EISA总线等。所述总线可以分为地址总线、数据总线、控制总线等。其中,存储器201用于存储程序,所述处理器200在接收到执行指令后,执行所述程序,前述本申请实施例任一实施方式揭示的所述业务测试方法可以应用于处理器200中,或者由处理器200实现。
处理器200可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器200中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器200可以是通用处理器,包括中央处理器(Central Processing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(DSP)、专用集成电路(ASIC)、现成可编程门阵列(FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器201,处理器200读取存储器201中的信息,结合其硬件完成上述方法的步骤。
本申请实施例提供的电子设备与本申请实施例提供的业务测试方法出于相同的发明构思,具有与其采用、运行或实现的方法相同的有益效果。
在一个实施例中,预设数据包括对应于所述第一组件的第一数据,处理器执行计算机可读指令时还执行以下步骤:创建与所述第一组件的连接;加载所述第一数据,根据预设的第一格式将所述第一数据写入所述第一组件。
在一个实施例中,预设数据包括对应于所述第二组件的第二数据,处理器执行计算机可读指令时还执行以下步骤:创建与所述第二组件的连接;加载所述第二数据,根据预设的第二格式将所述第二数据写入所述第二组件。
在一个实施例中,预设数据包括对应于所述第三组件的第三数据,所述第三数据包括内容信息和格式信息,所述处理器所执行的根据预设数据对所述目标组件进行加载,包括:扫描所述第三数据的格式信息,得到表结构数据;根据所述表结构数据得到建表语句;将所述建表语句添加到所述第三组件中,得到具有表结构的第三组件;将所述第三数据的内容信息写入所述具有表结构的第三组件。
在一个实施例中,处理器所执行的根据预设数据对所述目标组件进行加载包括:通过并行处理的方式分别对所述第一组件、第二组件和第三组件进行加载。
在一个实施例中,在对所述测试结果进行验证之后,处理器还断开与所述目标组件的连接,从所述目标组件中删除业务测试的相关数据。
本申请的电子设备与本申请实施例提供的业务测试方法出于相同的发明构思,将待测试业务进行测试时所需要的开源组件作为目标组件,通过获取并启动目标组件,并根据预设数据对目标组件进行加载,为待测试业务的测试提供可依赖的测试环境,根据加载后的目标组件对待测试业务进行测试,得到测试结果,再对测试结果进行验证。可将测试环境转移到业务测试系统内部,降低业务测试时对外部环境基础服务的依赖性,提高业务测试效率。
本申请实施方式还提供一种与前述实施方式所提供的业务测试方法对应的存储有计算机可读指令的存储介质,参考图5,其示出的计算机可读存储介质为光盘30,计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行前述任意实施方式所提供的业务测试方法。
在一个实施例中,该计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行以下步骤:获取并启动目标组件,所述目标组件为对待测试业务进行测试时所需要的开源组件;根据预设数据对所述目标组件进行加载;根据加载后的目标组件对所述待测试业务进行测试,得到测试结果;对所述测试结果进行验证。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,该计算机程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,前述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)等非易失性存储介质,或随机存储记忆体(Random Access Memory,RAM)等,在此不再一一赘述。
本申请的上述实施例提供的存储有计算机可读指令的存储介质与本申请实施例提供的业务测试方法出于相同的发明构思,具有与其存储的应用程序所采用、运行或实现的方法相同的有益效果。
需要说明的是:
在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备有固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本申请也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本申请的内容,并且上面对特定语言所做的描述是为了披露本申请的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本申请的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本申请并帮助理解各个发明方面中的一个或多个,在上面对本申请的示例性实施例的描述中,本申请的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本申请要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本申请的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本申请的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本申请的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本申请实施例的虚拟机的创建系统中的一些或者全部部件的一些或者全部功能。本申请还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者系统程序(例如,计算机程序和计算机程序产品)。这样的实现本申请的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本申请进行说明而不是对本申请进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本申请可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干系统的单元权利要求中,这些系统中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到其各种变化或替换,这些都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种业务测试方法,其特征在于,所述方法包括:
获取并启动目标组件,所述目标组件为对待测试业务进行测试时所需要的开源组件;
根据预设数据对所述目标组件进行加载;
根据加载后的目标组件对所述待测试业务进行测试,得到测试结果;
对所述测试结果进行验证。
2.如权利要求1所述的业务测试方法,其特征在于,所述目标组件包括基于分布式协调服务的第一组件、基于缓存服务的第二组件和基于嵌入式数据库的第三组件,所述第一组件、第二组件和第三组件为内嵌式组件。
3.如权利要求2所述的业务测试方法,其特征在于,所述预设数据包括对应于所述第一组件的第一数据,所述根据预设数据对所述目标组件进行加载,包括:
创建与所述第一组件的连接;
加载所述第一数据,根据预设的第一格式将所述第一数据写入所述第一组件。
4.如权利要求2所述的业务测试方法,其特征在于,所述预设数据包括对应于所述第二组件的第二数据,所述根据预设数据对所述目标组件进行加载,包括:
创建与所述第二组件的连接;
加载所述第二数据,根据预设的第二格式将所述第二数据写入所述第二组件。
5.如权利要求2所述的业务测试方法,其特征在于,所述预设数据包括对应于所述第三组件的第三数据,所述第三数据包括内容信息和格式信息,所述根据预设数据对所述目标组件进行加载,包括:
扫描所述第三数据的格式信息,得到表结构数据;
根据所述表结构数据得到建表语句;
将所述建表语句添加到所述第三组件中,得到具有表结构的第三组件;
将所述第三数据的内容信息写入所述具有表结构的第三组件。
6.如权利要求2所述的业务测试方法,其特征在于,所述根据预设数据对所述目标组件进行加载包括:
通过并行处理的方式分别对所述第一组件、第二组件和第三组件进行加载。
7.如权利要求1所述的业务测试方法,其特征在于,在对所述测试结果进行验证之后,所述方法还包括:
断开与所述目标组件的连接,从所述目标组件中删除业务测试的相关数据。
8.一种业务测试系统,其特征在于,所述业务测试系统包括:
测试环境创建层,用于获取并启动目标组件,所述目标组件为对待测试业务进行测试时所需要的开源组件;
数据加载层,用于根据预设数据对所述目标组件进行加载;
业务测试层,用于根据加载后的目标组件对所述待测试业务进行测试,得到测试结果;
结果验证层,用于对所述测试结果进行验证。
9.一种电子设备,包括存储器和处理器,所述存储器中存储有计算机可读指令,所述计算机可读指令被所述处理器执行时,使得所述处理器执行如权利要求1至7中任一项权利要求所述的方法的步骤。
10.一种存储有计算机可读指令的存储介质,所述计算机可读指令被一个或多个处理器执行时,使得一个或多个处理器执行如权利要求1至7中任一项权利要求所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311065072.XA CN117271309A (zh) | 2023-08-22 | 2023-08-22 | 业务测试方法、系统、电子设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311065072.XA CN117271309A (zh) | 2023-08-22 | 2023-08-22 | 业务测试方法、系统、电子设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117271309A true CN117271309A (zh) | 2023-12-22 |
Family
ID=89205261
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311065072.XA Pending CN117271309A (zh) | 2023-08-22 | 2023-08-22 | 业务测试方法、系统、电子设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117271309A (zh) |
-
2023
- 2023-08-22 CN CN202311065072.XA patent/CN117271309A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108415832B (zh) | 接口自动化测试方法、装置、设备及存储介质 | |
CN108459962B (zh) | 代码规范性检测方法、装置、终端设备及存储介质 | |
CN109491763B (zh) | 一种系统部署方法、装置及电子设备 | |
US9665465B1 (en) | Automated determination of application permissions | |
CN111078481B (zh) | 获取配置检查清单的方法、装置、电子设备及存储介质 | |
CN113448862B (zh) | 软件版本测试方法、装置及计算机设备 | |
CN114237754B (zh) | 一种数据加载方法、装置、电子设备以及存储介质 | |
CN111159040A (zh) | 一种测试数据生成方法、装置、设备及存储介质 | |
CN110888972A (zh) | 一种基于Spark Streaming的敏感内容识别方法及装置 | |
CN114816993A (zh) | 一种全链路接口测试方法、系统、介质及电子设备 | |
CN110795331A (zh) | 软件测试的方法和装置 | |
US11347533B2 (en) | Enhanced virtual machine image management system | |
CN106502707B (zh) | 代码生成方法及装置 | |
CN112561690A (zh) | 信用卡分期业务接口的测试方法、系统、设备及存储介质 | |
CN116483888A (zh) | 程序评估方法及装置、电子设备和计算机可读存储介质 | |
CN115080114B (zh) | 应用程序的移植处理方法、装置和介质 | |
CN113032256B (zh) | 自动化测试方法、装置、计算机系统和可读存储介质 | |
CN117271309A (zh) | 业务测试方法、系统、电子设备和存储介质 | |
CN112506781B (zh) | 测试监控方法、装置、电子设备、存储介质及程序产品 | |
CN115248680A (zh) | 软件构建方法、系统、设备、介质和程序产品 | |
CN113918525A (zh) | 数据交换调度方法、系统、电子设备、介质及程序产品 | |
CN107291494B (zh) | 应用程序安装包的生成方法及装置 | |
CN112950138A (zh) | 协同开发的状态管理方法、装置和服务器 | |
CN113900959A (zh) | 软件测试方法、装置、设备及存储介质 | |
CN118035072A (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 |