CN108628733B - 批量业务处理操作的测试方法及装置 - Google Patents
批量业务处理操作的测试方法及装置 Download PDFInfo
- Publication number
- CN108628733B CN108628733B CN201710158864.XA CN201710158864A CN108628733B CN 108628733 B CN108628733 B CN 108628733B CN 201710158864 A CN201710158864 A CN 201710158864A CN 108628733 B CN108628733 B CN 108628733B
- Authority
- CN
- China
- Prior art keywords
- program
- container
- processing operation
- file
- service processing
- 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
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/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Stored Programmes (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种批量业务处理操作的测试方法及装置,该方法包括:包括:根据批量业务处理操作的程序文件创建容器文件;依据创建的容器文件构建容器文件的镜像;按照预设需求选择镜像中的一个或一个以上业务处理操作的程序容器文件生成的程序进程进行测试;基于测试后的业务处理操作的程序容器进程中的每个业务处理操作的程序容器进程的输出日志,确定业务处理操作的程序容器进程完成测试;根据预设需求的测试顺序停止测试或继续下一个业务处理操作的程序容器进程的测试。能够监控业务处理操作的程序容器进程的启动停止状态,实现批量业务处理操作的全流程测试,合理分配资源便于批量业务处理操作的测试中配置参数的修改。
Description
技术领域
本发明属于计算机技术领域,尤其涉及一种批量业务处理操作的测试方法及装置。
背景技术
现有批量业务处理操作的测试(例如:电信领域的话单相关业务处理操作的全流程测试、网络爬虫相关业务处理操作的测试等)一般需要搭建多台测试主机,高性能数据库,尽可能的模拟生产环境;同时将生产环境的参数配置数据同步至相应的测试主机,若生产环境的配置参数有改动,则需要大量的同步工作;同时在全流程测试中,往往需要手工移动或者拷贝相关文件到特定的目录,才能进行下一步骤的测试,导致开发人员将大量的工作量耗费在环境的熟悉与搭建方面。
目前批量业务处理操作的测试环境,一般需要多台高性能业务主机,数据库主机,以及程序部署等一系列操作。一旦程序变更,或者环境变更则需要进行大量的配置修改,导致将大量的经历耗费在环境的配置方面。此外,测试环境往往受到主机性能的限制,无法实现全流程的自动化,需要开发人员人工监控输出结果,手工进行程序启停,文件移动操作,才能进行下一步的测试步骤。
综上,现有技术方案存在硬件配置要求高,配置修改复杂,需要人工监控等一系列问题。
发明内容
本发明实施例提供了一种批量业务处理操作的测试方法及装置,能够监控业务处理操作的程序容器进程的启动停止状态,实现批量业务处理操作的全流程测试,合理分配资源便于批量业务处理操作的测试中配置参数的修改。
第一方面,提供了一种批量业务处理操作的测试方法,包括:根据批量业务处理操作的程序文件创建容器文件;依据创建的容器文件构建容器文件的镜像;按照预设需求选择镜像中的一个或一个以上业务处理操作的程序容器文件生成的程序进程进行测试;基于测试后的业务处理操作的程序容器进程中的每个业务处理操作的程序容器进程的输出日志,确定业务处理操作的程序容器进程完成测试;根据预设需求的测试顺序停止测试或继续下一个业务处理操作的程序容器进程的测试。
第二方面,提供了一种批量业务处理操作的测试装置,包括:容器文件创建单元、镜像构建单元、测试单元、确定单元和处理单元。该容器文件创建单元用于根据批量业务处理操作的程序文件创建容器文件;该镜像构建单元用于依据创建的容器文件构建容器文件的镜像;该测试单元用于按照预设需求选择镜像中的一个或一个以上业务处理操作的程序容器镜像生成的程序容器进程进行测试;该确定单元用于基于测试后的业务处理操作的程序容器进程中的每个业务处理操作的程序容器进程的输出日志,确定业务处理操作的程序容器进程完成测试;该处理单元用于根据预设需求的测试顺序停止测试或继续下一个业务处理操作的程序容器进程的测试。
根据本发明实施例提供的批量业务处理操作的测试方法及装置,通过本申请基于容器技术的封装特性,基于测试后的业务处理操作的程序容器进程中的每个业务处理操作的程序容器进程的输出日志,确定其中的某一个业务处理操作的程序容器进程是否完成测试,以在其中的某一个业务处理操作的程序容器进程完成测试后根据预设需求的测试顺序停止测试或继续下一个业务处理操作的程序容器进程的测试,从而实现批量业务处理操作的自动化测试,并且通过业务处理操作的程序容器进程的启动停止状态的变化,将有限的cpu、内存等资源分配至正在运行的业务处理操作的程序容器进程,实现在一台低配置主机上的完成批量业务处理操作测试甚至全流程测试;同时由于容器技术的封装特性,对于业务处理操作的程序的修改,参数配置的调整可以封装在各个业务处理操作的程序容器文件中,便于只需要简单将生产环境的配置信息以文件形式同步至上述批量业务处理操作的程序文件的容器文件中,再重新构建容器文件的镜像即可,实现了参数配置的简单化。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的一种实施例的批量业务处理操作的测试方法的示意性流程图;
图2是本发明的一种实施例的批量业务处理操作的测试方法的示意性流程图;
图3是本发明的另一种实施例的批量业务处理操作的测试方法的示意性流程图;
图4是本发明的再一种实施例的批量业务处理操作的测试方法的示意性流程图;
图5是本发明的一种实施例的批量业务处理操作的测试装置的示意性结构框图;
图6是本发明的一种实施例的批量业务处理操作的测试方法的应用场景的示意图;
图7是本发明的另一种实施例的批量业务处理操作的测试装置的计算设备实现的示意性结构框图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明决不限于下面所提出的任何具体配置和算法,而是在不脱离本发明的精神的前提下覆盖了元素、部件和算法的任何修改、替换和改进。在附图和下面的描述中,没有示出公知的结构和技术,以便避免对本发明造成不必要的模糊。
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
图1是本发明的一种实施例的批量业务处理操作的测试方法的示意性流程图。如图1所示,批量业务处理操作的测试方法100,可以包括:S110,根据批量业务处理操作的程序文件创建容器文件,上述批量业务处理操作的程序文件例如可以是计费话单处理操作的程序文件或网络爬虫类处理操作的程序文件。上述容器例如可以是docker容器。例如,针对计费处理的每个进程构建各自独立的基础容器文件dockerfile;构建统一的数据库容器文件dockerfile,日志容器文件dockerfile;在一些示例中,可以将构建完成的dockerfile存至外置存储的容器文件存放区。其目录结构例如可以是:
Dockerfile/
Deal_1/
Deal_2/
Deal_3/
……
Deal_n/
log/
db/
根据一些实施例,上述容器文件还可以包括配置文件信息。对于业务处理操作的程序的修改,由于参数配置的调整都封装在各个业务处理操作的程序的容器中,只需要简单将生产环境的配置信息以文件形式同步至容器文件dockerfile中,再重新构建容器文件的镜像即可,实现了参数配置的简单化。例如,可以在二级目录中(deal_n/)创建相关的子目录,配置文件目录等配置文件信息。S120,依据创建的容器文件构建容器文件的镜像,S130,按照预设需求选择镜像中的一个或一个以上业务处理操作的程序容器文件生成的程序进程进行测试,上述预设需求可以包括例如需要进行测试的业务处理操作的程序和顺序、业务处理操作的程序的版本号等。S140,基于测试后的业务处理操作的程序容器进程中的每个业务处理操作的程序容器进程的输出日志,确定业务处理操作的程序容器进程完成测试,例如该方法100在数据库容器文件的镜像和日志容器文件的镜像构建完成后包括:启动数据库容器文件的镜像的进程和日志容器文件的镜像的进程;若数据库容器文件的镜像的进程和日志容器文件的镜像的进程均为运行状态,根据预设需求构建一个或一个以上业务处理操作的程序容器文件相对应的程序容器文件的镜像,其中,预设需求包括:预设的业务处理操作的程序文件的测试顺序和业务处理操作的程序文件的版本;根据预设的业务处理操作的程序文件的顺序和业务处理操作的程序文件的版本对上述镜像中的程序容器文件生成的程序进程进行测试。S150根据预设需求的测试顺序停止测试或继续下一个业务处理操作的程序容器进程的测试。例如在进行业务处理操作的全流程测试时,根据预设需求执行完所有业务处理操作程序的测试;在非全流程测试时,根据预设需求执行完需要测试的业务处理操作程序的测试;在数据库参数配置测试时,根据参数变化情况,预设需求执行测试的业务处理操作程序进行测试。通过本申请基于容器技术的封装特性,基于测试后的业务处理操作的程序容器进程中的每个业务处理操作的程序容器进程的输出日志,确定其中的某一个业务处理操作的程序容器进程是否完成测试,以在其中的某一个业务处理操作的程序容器进程完成测试后根据预设需求的测试顺序停止测试或继续下一个业务处理操作的程序容器进程的测试,从而实现批量业务处理操作的自动化测试,并且通过业务处理操作的程序容器进程的启动停止状态的变化,将有限的cpu、内存等资源分配至正在运行的业务处理操作的程序容器进程,实现在一台低配置主机上的完成批量业务处理操作测试甚至全流程测试;同时由于容器技术的封装特性,对于业务处理操作的程序的修改,参数配置的调整可以封装在各个业务处理操作的程序容器文件中,便于只需要简单将生产环境的配置信息以文件形式同步至上述批量业务处理操作的程序文件的容器文件中,再重新构建容器文件的镜像即可,实现了参数配置的简单化。
根据一些实施例,该方法100还包括:根据测试用户信息及批量业务处理操作的程序文件信息创建测试信息;当批量业务处理操作的完成测试后,删除创建的测试信息。
根据一些实施例,上述容器文件可以包括:数据库容器文件、日志容器文件和与每个业务处理操作的程序文件相对应的程序容器文件,依据创建的容器文件构建容器文件的镜像包括:依据数据库文件和创建的数据库容器文件构建数据库容器文件的镜像;依据日志文件和创建的日志容器文件构建所述日志容器文件的镜像;依据批量业务处理操作的程序文件中的每个业务处理操作的程序文件和与每个业务处理操作的程序文件相对应的程序容器文件构建每个业务处理操作的程序文件相对应的程序容器文件的镜像。
根据一些实施例,S140包括:基于测试后的业务处理操作的程序容器文件中的每个业务处理操作的程序容器进程的输出日志的最后一行代码,确定业务处理操作的程序容器进程完成测试。在一些示例中,S140还包括通过查看当前正在运行的容器指令判断业务处理操作的程序容器进程中的业务处理操作的程序容器进程是否退出。在一些示例中,S140还包括若业务处理操作的程序容器进程完成测试后超过预设时间未退出,则对业务处理操作的程序容器进程进行强制退出。
根据一些实施例,该方法100还包括根据容器文件中的对应关系,将程序容器进程与对应的数据库容器文件的镜像的进程和日志容器文件的镜像的进程进行关联。
图2是本发明的一种实施例的批量业务处理操作的测试方法的示意性流程图。如图2所示,该批量业务处理操作的测试方法200可以用于业务处理操作的全流程测试,包括:S210,构建数据库容器文件的镜像和日志容器文件的镜像,例如,若用户提交的测试请求为全流程测试,则主控进程master可以调用镜像生成进程,可以通过容器镜像构建dockerbuild命令创建数据库容器db镜像、日志容器log镜像。
S220,启动数据库容器文件的镜像的进程和日志容器文件的镜像的进程。在一些示例中,例如master可以调用启停进程,通过容器启动dockerrun命令,启动db,log容器。例如,在启动时,可以通过-v参数挂载:数据库的数据文件目录到db容器的对应目录,日志文件的日志输出目录到log容器。
S230,判定数据库容器的镜像的进程和日志容器的镜像的进程均为运行状态,则进行测试。在一些示例中,例如master进程的判定进程判断db容器的镜像的进程,log容器的镜像的进程均进入运行running状态,可以根据预设需求,例如,之前用户定义的启停顺序以及用户的选择信息(例如需要测试的程序版本)到存储的版本服务区获取相应版本的业务处理操作的程序文件,将业务处理操作的程序文件复制copy到dockerfile/deal_1目录下相应子目录中,调用docker build命令创建镜像。
S240,将程序容器文件的镜像的程序容器进程与对应的数据库容器文件的镜像的进程和日志容器文件的镜像的进程进行关联。例如,启停进程调用docker run命令按照预设顺序启动一个业务处理操作的程序容器进程,开始第一流程测试,这里可选择加入rm选项,使得业务处理操作的程序容器进程处理完成后自动退出。在一个示例中,在启动这个业务处理操作的程序容器进程时,可以通过连接命令link命令关联构建的对应的镜像db容器的进程,通过-volume-from参数关联构建的对应的镜像log容器的进程,例如,可以采用-v命令指定文件读取目录input1,处理后的文件输出目录output1。
S250,基于业务处理操作的程序容器进程的输出日志的最后一行代码,确定业务处理操作的程序容器进程完成测试,通过查看当前正在运行的容器指令。判断业务处理操作的程序容器进程是否退出,并按照预设顺序进行下一个业务处理操作的程序容器进程的测试直到所有业务处理操作的程序容器进程均测试完毕。在一些示例中,当判定有这个务处理操作的程序容器进程的对应日志(deal_1.log)文件产生后,可以循环读取log文件的最后一行,发现完成all_done的输出后则可以确认此环节处理完成。还可以通过查看当前正在运行的容器指令判断业务处理操作的程序容器进程中的业务处理操作的程序容器进程是否退出。例如,若这个业务处理操作的程序容器进程没有退出,可以休眠n秒后,调用docker stop命令停止这个业务处理操作的程序容器进程,并且标记这个业务处理操作的程序容器进程在此次session中已经运行完成并退出。
图3是本发明的另一种实施例的批量业务处理操作的测试方法的示意性流程图。如图3所示,该批量业务处理操作的测试方法300可以用于业务处理操作的非全流程测试,包括:S310构建数据库容器文件的镜像和日志容器文件的镜像;S320,启动数据库容器文件的镜像的进程和日志容器文件的镜像的进程;S330,判定数据库容器文件的镜像的进程和日志容器文件的镜像的进程均为运行状态,则对上述镜像中业务处理操作的程序容器文件生成的程序进程进行测试;S340,将程序容器文件的镜像的进程与对应的数据库容器文件的镜像的进程和日志容器文件的镜像的进程进行关联;S350,基于业务处理操作的程序容器进程的输出日志的最后一行代码,确定业务处理操作的程序容器进程完成测试,通过查看当前正在运行的容器指令判断业务处理操作的程序容器进程是否退出,并按照预设顺序进行下一个业务处理操作的程序容器进程的测试。
图4是本发明的再一种实施例的批量业务处理操作的测试方法的示意性流程图。如图4所示,该批量业务处理操作的测试方法400可以用于业务处理操作的在数据库参数配置测试,包括:S410,构建数据库容器文件的镜像和日志容器文件的镜像;S420,启动数据库容器文件的镜像的进程和日志容器文件的镜像的进程;S430,判定数据库容器文件的镜像的进程和日志容器文件的镜像的进程均为运行状态,则选择数据库参数影响的业务处理操作的程序容器文件生成的程序进程进行测试;S440,将程序容器文件的镜像的进程与对应的数据库容器文件的镜像的进程和日志容器文件的镜像的进程进行关联;S450,基于业务处理操作的程序容器进程的输出日志的最后一行代码,确定业务处理操作的程序容器进程完成测试,通过查看当前正在运行的容器指令判断业务处理操作的程序容器进程是否退出,并按照预设顺序进行下一个业务处理操作的程序容器进程的测试。
上文中结合图1至图4,详细描述了根据本发明实施例的批量业务处理操作的测试方法,下面将结合图5至图7,详细描述根据本发明实施例的批量业务处理操作的测试装置。
图5是本发明的一种实施例的批量业务处理操作的测试装置的示意性结构框图。如图5所示,该批量业务处理操作的测试装置500,包括:容器文件创建单元510、镜像构建单元520、测试单元530、确定单元540和处理单元550。该容器文件创建单元510用于根据批量业务处理操作的程序文件创建容器文件;该镜像构建单元520用于依据创建的容器文件构建容器文件的镜像;该测试单元530该测试单元用于按照预设需求选择镜像中的一个或一个以上业务处理操作的程序容器镜像生成的程序容器进程进行测试;该确定单元540用于基于测试后的业务处理操作的程序容器进程中的每个业务处理操作的程序容器进程的输出日志,确定业务处理操作的程序容器进程完成测试;该处理单元550用于根据预设需求的测试顺序停止测试或继续下一个业务处理操作的程序容器进程的测试。根据本发明实施例的批量业务处理操作的测试装置500可对应于根据本发明实施例的批量业务处理操作的测试方法100中的执行主体,并且批量业务处理操作的测试装置500中的各个单元的上述和其它操作和/或功能分别为了实现图1的各个方法的相应流程,为了简洁,在此不再赘述。通过本申请基于容器技术的封装特性,基于测试后的业务处理操作的程序容器进程中的每个业务处理操作的程序容器进程的输出日志,确定其中的某一个业务处理操作的程序容器进程是否完成测试,以在其中的某一个业务处理操作的程序容器进程完成测试后根据预设需求的测试顺序停止测试或继续下一个业务处理操作的程序容器进程的测试,从而实现批量业务处理操作的自动化测试,并且通过业务处理操作的程序容器进程的启动停止状态的变化,将有限的cpu、内存等资源分配至正在运行的业务处理操作的程序容器进程,实现在一台低配置主机上的完成批量业务处理操作测试甚至全流程测试;同时由于容器技术的封装特性,对于业务处理操作的程序的修改,参数配置的调整可以封装在各个业务处理操作的程序容器文件中,便于只需要简单将生产环境的配置信息以文件形式同步至上述批量业务处理操作的程序文件的容器文件中,再重新构建容器文件的镜像即可,实现了参数配置的简单化。
根据一些实施例,该处理单元550还可以用于:根据测试用户信息及批量业务处理操作的程序文件信息创建测试信息;当批量业务处理操作的完成测试后,删除创建的测试信息。
根据一些实施例,上述容器文件包括:数据库容器文件、日志容器文件和与每个业务处理操作的程序文件相对应的程序容器文件,该镜像构建单元520还可以用于:依据数据库文件和创建的数据库容器文件构建数据库容器文件的镜像;依据日志文件和创建的日志容器文件构建日志容器文件的镜像;依据批量业务处理操作的程序文件中的每个业务处理操作的程序文件和与每个业务处理操作的程序文件相对应的程序容器文件构建每个业务处理操作的程序文件相对应的程序容器文件的镜像。在一些示例中,上述容器文件还包括配置文件信息。
根据一些实施例,该镜像构建单元520还可以用于:在数据库容器文件的镜像和日志容器文件的镜像构建完成后包括:启动数据库容器文件的镜像的进程和日志容器文件的镜像的进程;若数据库容器镜像的进程和日志容器镜像的进程均为运行状态,根据预设需求构建一个或一个以上业务处理操作的程序容器文件相对应的程序容器文件的镜像,其中,预设需求包括:预设的业务处理操作的程序文件的测试顺序和业务处理操作的程序文件的版本;根据预设的业务处理操作的程序文件的顺序和业务处理操作的程序文件的版本进行测试。在一些示例中,该镜像构建单元520还可以用于根据容器文件中的对应关系,将程序容器进程与对应的数据库容器文件的镜像的进程和日志容器文件的镜像的进程进行关联。
根据一些实施例,该确定单元540还可以用于:基于测试后的业务处理操作的程序容器文件中的每个业务处理操作的程序容器进程的输出日志的最后一行代码,确定业务处理操作的程序容器进程完成测试。在一些示例中,确定单元540还可以用于:通过查看当前正在运行的程序容器进程指令判断业务处理操作的程序容器文件中的业务处理操作的程序容器进程是否退出。在一些示例中,该确定单元540还可以用于:若业务处理操作的程序容器进程完成测试后超过预设时间未退出,则对业务处理操作的程序容器进程进行强制退出。
图6是本发明的一种实施例的批量业务处理操作的测试方法的应用场景的示意图。如图6所示,该批量业务处理操作的测试装置可以在上述应用场景中进行批量业务处理操作的测试。在一些示例中,该批量业务处理操作的测试装置可以部署在宿主机610中,例如该批量业务处理操作的测试装置执行的进程可以是主控进程611,通过主控进程611可以宿主机610中部署主容器组612和从容器组613,上述的主容器组612中可以包括
第一业务处理容器文件6121到第n业务处理容器文件612n的镜像,从容器组613可以包括数据库容器文件6131的镜像和日志容器6132的镜像。在一些示例中,业务处理程序文件可以与宿主机610分离的设置在外置存储620中,例如,在外置存储620中存储有:程序版本存放区621、容器文件存放区622、业务处理程序操作的程序分拣存放区623、数据库文件去624和日志存放区625。
图7是本发明的另一种实施例的批量业务处理操作的测试装置的计算设备实现的示意性结构框图。如图7所示结合上述的批量业务处理操作的测试方法和批量业务处理操作的测试装置的至少一部分可以由计算设备700包括输入设备701、输入端口702、处理器703、存储器704、输出端口705、以及输出设备706。其中,输入端口702、处理器703、存储器704、以及输出端口705通过总线710相互连接,输入设备701和输出设备706分别通过输入端口702和输出端口705与总线710连接,进而与计算设备700的其他组件连接。需要说明的是,这里的输出接口和输入接口也可以用I/O接口表示。具体地,输入设备701接收来自外部的输入信息,并通过输入端口702将输入信息传送到处理器703;处理器703基于存储器704中存储的计算机可执行指令对输入信息进行处理以生成输出信息,将输出信息临时或者永久地存储在存储器704中,然后通过输出端口705将输出信息传送到输出设备706;输出设备706将输出信息输出到计算设备700的外部。
上述存储器704包括用于数据或指令的大容量存储器。举例来说而非限制,存储器704可包括HDD、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(USB)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器704可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器704可在计算设备700的内部或外部。在特定实施例中,存储器704是非易失性固态存储器。在特定实施例中,存储器704包括只读存储器(ROM)。在合适的情况下,该ROM可以是掩模编程的ROM、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、电可改写ROM(EAROM)或闪存或者两个或更多个以上这些的组合。
总线710包括硬件、软件或两者,将计算设备700的部件彼此耦接在一起。举例来说而非限制,总线710可包括加速图形端口(AGP)或其他图形总线、增强工业标准架构(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准架构(ISA)总线、无限带宽互连、低引脚数(LPC)总线、存储器总线、微信道架构(MCA)总线、外围组件互连(PCI)总线、PCI-Express(PCI-X)总线、串行高级技术附件(SATA)总线、视频电子标准协会局部(VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线710可包括一个或多个总线710。尽管本发明实施例描述和示出了特定的总线,但本发明考虑任何合适的总线或互连。
当通过图7所示的计算设备700实现结合图5描述的批量业务处理操作的测试装置时,输入设备701批量业务处理操作的程序文件,在特定实施例中,与输出设备相连的I/O接口可以包括硬件、软件或两者,提供用于在计算设备700与一个或多个I/O设备之间的通信的一个或多个接口。在合适的情况下,计算设备700可包括一个或多个这些I/O设备。一个或多个这些I/O设备可允许人和计算机系统700之间的通信。举例来说而非限制,I/O设备可包括键盘、小键盘、麦克风、监视器、鼠标、打印机、扫描仪、扬声器、静态照相机、触针、手写板、触摸屏、轨迹球、视频摄像机、另一合适的I/O设备或者两个或更多个以上这些的组合。I/O设备可包括一个或多个传感器。本发明实施例考虑用于它们的任何合适的I/O设备和任何合适的I/O接口。在合适的情况下,I/O接口可包括一个或多个装置或能够允许处理器703驱动一个或多个这些I/O设备的软件驱动器。在合适的情况下,I/O接口可包括一个或多个I/O接口。尽管本发明实施例描述和示出了特定的I/O接口,但本发明实施例考虑任何合适的I/O接口。该处理器703基于存储器704中存储的计算机可执行指令,根据批量业务处理操作的程序文件创建容器文件;依据创建的容器文件构建容器文件的镜像;按照预设需求选择镜像中的一个或一个以上业务处理操作的程序容器镜像生成的程序容器进程进行测试;基于测试后的业务处理操作的程序容器进程中的每个业务处理操作的程序容器进程的输出日志,确定业务处理操作的程序容器进程完成测试;根据预设需求的测试顺序停止测试或继续下一个业务处理操作的程序容器进程的测试。随后在需要时经由输出端口705和输出设备706将上述测试结果输出。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (16)
1.一种批量业务处理操作的测试方法,其特征在于,包括:
根据所述批量业务处理操作的程序文件创建容器文件;
依据创建的所述容器文件构建所述容器文件的镜像;
按照预设需求选择所述镜像中的一个或一个以上业务处理操作的程序容器镜像生成的程序容器进程进行测试;
基于测试后的业务处理操作的程序容器进程中的每个业务处理操作的程序容器进程的输出日志,确定所述业务处理操作的程序容器进程完成测试;
根据所述预设需求的测试顺序停止测试或继续下一个业务处理操作的程序容器进程的测试;
所述容器文件包括:数据库容器文件、日志容器文件和与每个业务处理操作的程序文件相对应的程序容器文件,所述依据创建的所述容器文件构建所述容器文件的镜像包括:
依据数据库文件和创建的所述数据库容器文件构建所述数据库容器文件的镜像;
依据日志文件和创建的所述日志容器文件构建所述日志容器文件的镜像;
依据所述批量业务处理操作的程序文件中的每个业务处理操作的程序文件和与所述每个业务处理操作的程序文件相对应的程序容器文件构建所述每个业务处理操作的程序文件相对应的程序容器文件的镜像。
2.根据权利要求1所述的批量业务处理操作的测试方法,其特征在于,所述容器文件还包括配置文件信息。
3.根据权利要求1所述的批量业务处理操作的测试方法,其特征在于,在所述数据库容器文件的镜像和所述日志容器文件的镜像构建完成后包括:
启动数据库容器文件的镜像的进程和所述日志容器文件的镜像的进程;
若所述数据库容器镜像的进程和所述日志容器镜像的进程均为运行状态,根据预设需求构建所述一个或一个以上业务处理操作的程序容器文件相对应的程序容器文件的镜像,其中,所述预设需求包括:预设的业务处理操作的程序文件的测试顺序和所述业务处理操作的程序文件的版本;
根据所述预设的业务处理操作的程序文件的顺序和所述业务处理操作的程序文件的版本进行测试。
4.根据权利要求1所述的批量业务处理操作的测试方法,其特征在于,所述基于测试后的业务处理操作的程序容器进程中的每个业务处理操作的程序容器进程的输出日志,确定所述业务处理操作的程序容器进程完成测试,包括:
基于测试后的业务处理操作的程序容器文件中的每个业务处理操作的程序容器进程的输出日志的最后一行代码,确定所述业务处理操作的程序容器进程完成测试。
5.根据权利要求1所述的批量业务处理操作的测试方法,其特征在于,还包括:根据所述容器文件中的对应关系,将所述程序容器进程与对应的所述数据库容器文件的镜像的进程和所述日志容器文件的镜像的进程进行关联。
6.根据权利要求1或4所述的批量业务处理操作的测试方法,其特征在于,还包括:
通过查看当前正在运行的程序容器进程指令判断所述业务处理操作的程序容器文件中的业务处理操作的程序容器进程是否退出。
7.根据权利要求6所述的批量业务处理操作的测试方法,其特征在于,还包括:
若所述业务处理操作的程序容器进程完成测试后超过预设时间未退出,则对所述业务处理操作的程序容器进程进行强制退出。
8.根据权利要求1所述的批量业务处理操作的测试方法,其特征在于,还包括:
根据测试用户信息及所述批量业务处理操作的程序文件信息创建测试信息;
当所述批量业务处理操作的完成测试后,删除创建的所述测试信息。
9.一种批量业务处理操作的测试装置,其特征在于,包括:
容器文件创建单元,用于根据所述批量业务处理操作的程序文件创建容器文件;
镜像构建单元,用于依据创建的所述容器文件构建所述容器文件的镜像;
测试单元,用于按照预设需求选择所述镜像中的一个或一个以上业务处理操作的程序容器镜像生成的程序容器进程进行测试;
确定单元,用于基于测试后的业务处理操作的程序容器进程中的每个业务处理操作的程序容器进程的输出日志,确定所述业务处理操作的程序容器进程完成测试;
处理单元,用于根据所述预设需求的测试顺序停止测试或继续下一个业务处理操作的程序容器进程的测试;
所述容器文件包括:数据库容器文件、日志容器文件和与每个业务处理操作的程序文件相对应的程序容器文件,所述镜像构建单元,还用于:
依据数据库文件和创建的所述数据库容器文件构建所述数据库容器文件的镜像;
依据日志文件和创建的所述日志容器文件构建所述日志容器文件的镜像;
依据所述批量业务处理操作的程序文件中的每个业务处理操作的程序文件和与所述每个业务处理操作的程序文件相对应的程序容器文件构建所述每个业务处理操作的程序文件相对应的程序容器文件的镜像。
10.根据权利要求9所述的批量业务处理操作的测试装置,其特征在于,所述容器文件还包括配置文件信息。
11.根据权利要求9所述的批量业务处理操作的测试装置,其特征在于,所述镜像构建单元还用于:在所述数据库容器文件的镜像和所述日志容器文件的镜像构建完成后包括:
启动数据库容器文件的镜像的进程和所述日志容器文件的镜像的进程;
若所述数据库容器镜像的进程和所述日志容器镜像的进程均为运行状态,根据预设需求构建所述一个或一个以上业务处理操作的程序容器文件相对应的程序容器文件的镜像,其中,所述预设需求包括:预设的业务处理操作的程序文件的测试顺序和所述业务处理操作的程序文件的版本;
根据所述预设的业务处理操作的程序文件的顺序和所述业务处理操作的程序文件的版本进行测试。
12.根据权利要求9所述的批量业务处理操作的测试装置,其特征在于,所述确定单元还用于:
基于测试后的业务处理操作的程序容器文件中的每个业务处理操作的程序容器进程的输出日志的最后一行代码,确定所述业务处理操作的程序容器进程完成测试。
13.根据权利要求9所述的批量业务处理操作的测试装置,其特征在于,所述镜像构建单元还用于根据所述容器文件中的对应关系,将所述程序容器进程与对应的所述数据库容器文件的镜像的进程和所述日志容器文件的镜像的进程进行关联。
14.根据权利要求9或12所述的批量业务处理操作的测试装置,其特征在于,所述确定单元还用于:
通过查看当前正在运行的程序容器进程指令判断所述业务处理操作的程序容器文件中的业务处理操作的程序容器进程是否退出。
15.根据权利要求14所述的批量业务处理操作的测试装置,其特征在于,所述确定单元还用于:
若所述业务处理操作的程序容器进程完成测试后超过预设时间未退出,则对所述业务处理操作的程序容器进程进行强制退出。
16.根据权利要求9所述的批量业务处理操作的测试装置,其特征在于,所述处理单元还用于:
根据测试用户信息及所述批量业务处理操作的程序文件信息创建测试信息;
当所述批量业务处理操作的完成测试后,删除创建的所述测试信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710158864.XA CN108628733B (zh) | 2017-03-16 | 2017-03-16 | 批量业务处理操作的测试方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710158864.XA CN108628733B (zh) | 2017-03-16 | 2017-03-16 | 批量业务处理操作的测试方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108628733A CN108628733A (zh) | 2018-10-09 |
CN108628733B true CN108628733B (zh) | 2021-06-15 |
Family
ID=63686914
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710158864.XA Active CN108628733B (zh) | 2017-03-16 | 2017-03-16 | 批量业务处理操作的测试方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108628733B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108833197B (zh) * | 2018-04-10 | 2020-10-16 | 中国科学院信息工程研究所 | 一种基于云的主动探测方法和探测平台 |
CN113297072B (zh) * | 2021-05-17 | 2023-11-03 | 阿里巴巴新加坡控股有限公司 | 容器测试方法及装置 |
CN113377665B (zh) * | 2021-06-25 | 2024-08-06 | 北京百度网讯科技有限公司 | 基于容器技术的测试方法、装置、电子设备及存储介质 |
CN114138557B (zh) * | 2021-11-26 | 2022-05-27 | 北京大道云行科技有限公司 | 一种存储快照回滚数据一致性测试方法与装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105187500A (zh) * | 2015-08-07 | 2015-12-23 | 浪潮(北京)电子信息产业有限公司 | 一种基于容器的分布式存储系统部署方法 |
CN105224466A (zh) * | 2015-11-17 | 2016-01-06 | 广州亦云信息技术有限公司 | 一种基于Docker的集成测试方法及系统 |
CN105701010A (zh) * | 2015-12-31 | 2016-06-22 | 北京元心科技有限公司 | 一种加速软件测试的方法和装置 |
CN106502905A (zh) * | 2016-10-26 | 2017-03-15 | 腾讯科技(深圳)有限公司 | 一种应用程序的测试方法、装置及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9965256B2 (en) * | 2015-06-18 | 2018-05-08 | The Joan and Irwin Jacobs Technion-Cornell Institute | Method and system for evaluating computational algorithms described in printed publications |
-
2017
- 2017-03-16 CN CN201710158864.XA patent/CN108628733B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105187500A (zh) * | 2015-08-07 | 2015-12-23 | 浪潮(北京)电子信息产业有限公司 | 一种基于容器的分布式存储系统部署方法 |
CN105224466A (zh) * | 2015-11-17 | 2016-01-06 | 广州亦云信息技术有限公司 | 一种基于Docker的集成测试方法及系统 |
CN105701010A (zh) * | 2015-12-31 | 2016-06-22 | 北京元心科技有限公司 | 一种加速软件测试的方法和装置 |
CN106502905A (zh) * | 2016-10-26 | 2017-03-15 | 腾讯科技(深圳)有限公司 | 一种应用程序的测试方法、装置及系统 |
Non-Patent Citations (1)
Title |
---|
基于Docker的研发部署管理平台的设计与实现;王飞;《中国优秀硕士学位论文全文数据库 信息科技辑》;20150915;第I138-291页 * |
Also Published As
Publication number | Publication date |
---|---|
CN108628733A (zh) | 2018-10-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108628733B (zh) | 批量业务处理操作的测试方法及装置 | |
US9632919B2 (en) | Request change tracker | |
CN109324962B (zh) | 一种基于云物联技术的应用程序的测试方法及设备 | |
US10884912B2 (en) | Method, system, and framework for testing a human machine interface (HMI) application on a target device | |
US10789111B2 (en) | Message oriented middleware with integrated rules engine | |
US9411711B2 (en) | Adopting an existing automation script to a new framework | |
JP2017201470A (ja) | 設定支援プログラム、設定支援方法及び設定支援装置 | |
CN107621963B (zh) | 一种软件部署方法、软件部署系统及电子设备 | |
US20220188214A1 (en) | Dynamic distributed tracing instrumentation in a microservice architecture | |
EP3522449A1 (en) | Service state transition method and device | |
US10795747B2 (en) | File synchronizing service status monitoring and error handling | |
CN114640709B (zh) | 一种边缘节点的处理方法、装置及介质 | |
CN110209525B (zh) | 操作系统还原方法及装置 | |
CN102053848A (zh) | Linux操作系统的自动安装方法 | |
CN105242981A (zh) | 一种Kdump的配置方法及计算机设备 | |
CN111131131B (zh) | 一种漏洞扫描方法、装置、服务器及可读存储介质 | |
AU2017235993B2 (en) | Dynamic loading and deployment of test files to prevent interruption of test execution | |
CN106909382B (zh) | 输出不同类型系统启动信息的方法及装置 | |
CN111078418B (zh) | 操作同步方法、装置、电子设备及计算机可读存储介质 | |
CN113032224A (zh) | 一种信息采集方法、装置、电子设备及可读存储介质 | |
CN115599618B (zh) | 寄存器动态改配验证方法、装置、存储介质和处理器 | |
JP2018077697A (ja) | 検証システムおよび検証方法 | |
CN108289114B (zh) | 云端服务系统及处理云端服务异常的方法 | |
CN115454565A (zh) | 虚拟机的数据迁移方法、装置、电子设备及存储介质 | |
CN117634369B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |