CN112631919A - 一种对比测试方法、装置、计算机设备及存储介质 - Google Patents
一种对比测试方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN112631919A CN112631919A CN202011573621.0A CN202011573621A CN112631919A CN 112631919 A CN112631919 A CN 112631919A CN 202011573621 A CN202011573621 A CN 202011573621A CN 112631919 A CN112631919 A CN 112631919A
- Authority
- CN
- China
- Prior art keywords
- test
- tested
- application program
- result data
- data
- 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
- 238000003860 storage Methods 0.000 title claims abstract description 18
- 238000010998 test method Methods 0.000 title claims abstract description 8
- 238000012360 testing method Methods 0.000 claims abstract description 389
- 238000000034 method Methods 0.000 claims abstract description 25
- 238000004590 computer program Methods 0.000 claims description 24
- 230000000052 comparative effect Effects 0.000 claims description 9
- 238000013522 software testing Methods 0.000 abstract description 4
- 238000007726 management method Methods 0.000 description 16
- 230000008569 process Effects 0.000 description 12
- 238000010586 diagram Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 6
- 238000013515 script Methods 0.000 description 4
- 239000000243 solution Substances 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 238000013524 data verification Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000013523 data management Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000009826 distribution Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 239000012085 test solution Substances 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
- 230000000007 visual effect Effects 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/368—Test management for test version control, e.g. updating test cases to a new software version
-
- 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
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
技术领域
本发明涉及软件测试技术领域,特别涉及一种对比测试方法、装置、计算机设备及存储介质。
背景技术
随着计算机技术的发展,软件服务的应用越来越广泛。在软件开发过程中,需要对开发的应用程序进行相关软件测试。软件测试是指在规定的条件下对应用程序进行操作,以发现程序错误,衡量应用质量,对其是否能满足设计要求进行评估的过程。目前使用的测试方法都非常繁琐、测试执行效率不高、测试脚本调试费时费力,而且需要测试人员具有一定的编程学习能力,同时测试用例和测试数据不易管理和维护。一方面,软件的更新速度很快,同一个应用程序,每次代码变更后,其对应的版本也会随之改变,而每一版本的应用程序在正式发布前都需要经过测试,只有测试通过的应用程序才可以进行发布。另一方面测试任务可能会对应不同的数据源,如MySQL、Redis、HTTP接口、VMS消息等。因而软件测试面临测试工作量巨大、测试结果数据检验任务艰巨等问题。
因此,亟需提出一种新的测试方法,以解决上述问题。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种对比测试方法、装置、计算机设备以及存储介质,以克服现有技术中存在的测试工作量巨大、测试结果数据检验任务艰巨等等问题。
为解决上述一个或多个技术问题,本发明采用的技术方案是:
第一方面,提供了一种对比测试方法,该方法包括如下步骤:
接收当前版本的待测试应用程序的测试请求,根据所述测试请求生成对应的测试任务;
执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,获取当前测试结果数据;
将所述当前测试结果数据与历史版本的所述待测试应用程序的历史测试结果数据按照预设规则进行比对,获取比对结果;
根据所述比对结果确定当前版本的所述待测试应用程序是否测试通过。
进一步的,所述接收当前版本的待测试应用程序的测试请求,根据所述测试请求生成对应的测试任务包括:
接收当前版本的待测试应用程序的测试请求,根据所述测试请求以及预设数据模板生成对应的测试任务,所述数据模板用于配置所述测试任务的配置数据。
进一步的,所述将所述当前测试结果数据与历史版本的所述待测试应用程序的历史测试结果数据按照预设规则进行比对,获取比对结果包括:
将所述当前测试结果数据中的每一测试操作对应的结果数据与所述历史测试数据中相应的结果数据进行比较,获取比对结果。
进一步的,所述方法还包括:
判断所述当前版本的待测试应用程序相比于所述历史版本的待测试应用程序的代码逻辑是否有变更;
所述根据所述比对结果确定当前版本的所述待测试应用程序是否测试通过包括:
若所述当前版本的待测试应用程序相比于所述历史版本的待测试应用程序的代码逻辑有变更,则获取所述比对结果中变更后代码逻辑对应的结果数据,判断所述结果数据是否符合预设要求,若满足,则确定当前版本的所述待测试应用程序测试通过。
进一步的,所述方法还包括:
将所述当前测试结果数据作为历史测试结果数据与所述当前版本的待测试应用程序关联存储至基线数据库中,所述基线数据库用于存储历史测试数据
进一步的,所述执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,获取当前测试结果数据包括:
执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,根据预设的结果数据模块生成当前测试结果数据。
进一步的,所述测试任务包括Saturn任务或Shell任务中的至少一种。
第二方面,提供了一种对比测试装置,所述装置包括:
任务生成模块,用于接收当前版本的待测试应用程序的测试请求,根据所述测试请求生成对应的测试任务;
测试执行模块,用于执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,获取当前测试结果数据;
结果比对模块,用于将所述当前测试结果数据与历史版本的所述待测试应用程序的历史测试结果数据按照预设规则进行比对,获取比对结果;
测试判断模块,用于根据所述比对结果确定当前版本的所述待测试应用程序是否测试通过。
第三方面,提供了一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如下步骤:
接收当前版本的待测试应用程序的测试请求,根据所述测试请求生成对应的测试任务;
执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,获取当前测试结果数据;
将所述当前测试结果数据与历史版本的所述待测试应用程序的历史测试结果数据按照预设规则进行比对,获取比对结果;
根据所述比对结果确定当前版本的所述待测试应用程序是否测试通过。
第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如下步骤:
接收当前版本的待测试应用程序的测试请求,根据所述测试请求生成对应的测试任务;
执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,获取当前测试结果数据;
将所述当前测试结果数据与历史版本的所述待测试应用程序的历史测试结果数据按照预设规则进行比对,获取比对结果;
根据所述比对结果确定当前版本的所述待测试应用程序是否测试通过。
本发明实施例提供的技术方案带来的有益效果是:
本发明实施例提供的对比测试方法、装置、计算机设备及存储介质,通过接收当前版本的待测试应用程序的测试请求,根据所述测试请求生成对应的测试任务,执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,获取当前测试结果数据,将所述当前测试结果数据与历史版本的所述待测试应用程序的历史测试结果数据按照预设规则进行比对,获取比对结果,根据所述比对结果确定当前版本的所述待测试应用程序是否测试通过,应对时间紧、需求大的软件测试场景,提高了软件测试人员的效率、节省了测试时间,并且大幅提升了软件测试质量、缩短测试时长,实现自动化执行配置的测试用例和计划并反馈测试结果数据;
进一步的,通过接收当前版本的待测试应用程序的测试请求,根据所述测试请求以及预设数据模板生成对应的测试任务,所述数据模板用于配置所述测试任务的配置数据,并且在获取到当前测试结果数据后,将所述当前测试结果数据作为历史测试结果数据与所述当前版本的待测试应用程序关联存储至基线数据库中,所述基线数据库用于存储历史测试数据,实现对后台任务处理不同数据源数据的对比验证。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据一示例性实施例示出的对比测试平台的***架构图;
图2是根据一示例性实施例示出的用例执行的流程图;
图3是根据一示例性实施例示出的对比测试方法的流程图;
图4是根据一示例性实施例示出的对比测试装置的结构示意图;
图5是根据一示例性实施例示出的计算机设备的内部结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如背景技术所述,在各个业务的应用***中,或多或少都会存在使用后台定时任务处理业务数据的情况,比如用JAVA任务拉取数据,用消息任务接收上游***推送的消息,或者用SHELL任务进行批处理等等。目前针对这种后台作业任务的测试,通常要么通过手工进行测试,要么编写测试脚本进行自动化测试。一方面,这些测试方法存在操作繁琐、测试执行效率不高、测试脚本调试费时费力而且需要一定的编程学习能力、测试用例和数据不易管理和维护等问题。另一方面,软件的更新速度很快,同一个应用程序,其对应的版本可能会有很多,而每一版本的应用程序在正式发布前都要经过各种测试,测试过后需要对测试结果数据进行校验,导致测试工作量巨大,耗时耗力。
为了解决这些痛点,本发明实施例中创造性地提供了一种针对定时任务测试的对比测试平台,该***平台主要针对后台定时任务(包含Saturn任务和SHELL任务),提供一种可视化的、无编码的、可配置的和高效的自动化测试解决方案。该测试平台支持后台任务处理多种数据源(如MySQL,Redis、HTTP接口,VMS消息等)的对比测试,无需编码节省时间,自动执行并反馈测试结果,可以很好的提高测试效率。
图1是根据一示例性实施例示出的对比测试平台的***架构图,参照图1所示,该对比测试平台主要由前台管理***、用例执行***、数据库、Redis、组成,其中数据库包括基础数据库和基线数据库,基础数据库主要用来存储前台配置管理的基础数据,基线数据库主要用于存储测试用例的基线数据,如测试结果数据等,该数据用于和测试任务运行后的实际结果数据进行对比,以验证测试用例是否成功。Redis主要用于分布式锁,控制并发的测试用例。
其中,本发明实施例中的对比测试平台的前台管理***主要可以实现以下几个功能:
1、基础数据管理,包括业务线管理、产品管理、模块管理,主要用于区分测试用例归属的业务线、产品和模块;
2、测试环境管理,包括hosts配置和应用Job配置,hosts配置主要用于配置不同环境的DNS,主要用户http接口的配置,Job配置主要配置待测应用的任务,包括Saturn的域名和Job名,或者是SHELL任务IP,用户密码以及对应的脚本;
3、数据源管理,包括MySQL数据源配置、REDIS数据源配置和VMS消息配置等,主要是配置待测任务使用到的数据源配置,包括IP、端口、用户名和密码,如果是消息配置则是配置消息所属环境、频道和队列;
4、模板管理,包括数据模板和消息模板管理,数据模板分为造数模板和结果模板两种类型,造数模板作用于测试用例的输入数据,结果模板作用于测试用例的输出数据,所以此处数据模板是用于配置不同数据源,如MySQL、Redis、HTTP等的造数模板和结果模板,消息模板主要配置发送者的消息,作用于消费者的输入数据;
5、用例管理,主要包括新建测试用例功能,执行用例功能和查询用例结果,其中测试用例会关联待测应用,造数模板和结果模板;
6、计划管理,主要包括计划新建、计划执行和查看计划执行结果,其中测试计划可以由多个测试用例组成。
本发明实施例中,用例执行***主要包括两部分功能:一是测试计划执行,二是测试用例执行。
其中,测试计划执行过程如下:
首先查询所有的待执行的测试计划,然后顺序执行测试计划和测试计划中的用例。在执行某个测试用例之前会检查Redis中是否存在使用相同数据源的用例,如果存在则等待,否则将该测试用例用到的数据源写入Redis,然后执行用例,等到用例执行完成则删除该用例的Redis数据源数据。
图2是根据一示例性实施例示出的用例执行的流程图,参照图2所示,测试用例执行过程如下:
首先会查询所有待执行的用例(非计划中的用例),然后并发执行所有待执行的测试用例。在单个用例执行过程中,首先导入造数模板中配置的数据到测试任务的实际库中,然后导入结果模板中的数据到基线数据库中,然后启动待测的Saturn任务或SHELL任务,等到任务执行完成后,查询测试任务实际库中的结果数据与基线数据库中的基线数据进行对比,如果数据根据某种对比规则(排除某些对比字段如id、create_time、update_time等)对比成功,则判断用例测试通过,否则测试失败。
图3是根据一示例性实施例示出的对比测试方法的流程图,参照图3所示,该方法包括如下步骤:
S1:接收当前版本的待测试应用程序的测试请求,根据所述测试请求生成对应的测试任务。
具体的,每个测试应用程序可能会对应多个版本,获取待测试应用程序的当前版本的测试请求,测试请求包括但不限于:待测试应用程序的版本号、测试需求、变更信息、数据源信息等数据,根据该请求生成对应的测试任务。本发明实施例中,对比测试平台的后台定时任务(即测试任务)可以是Saturn任务或Shell任务,用户可以根据实际需求进行设置。
S2:执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,获取当前测试结果数据。
具体的,本发明实施例中,会对不同后台测试任务的启动和停止操作以及执行状态进行监测。在启动测试任务执行测试过程中,需要判断任务执行状态,是执行中还是执行完成。对于执行中的任务进行监测是为了防止发生异常不能正常结束,对于这种不能正常结束的任务,需要进行强制停止,一是防止执行测试任务的进程一直卡住,二是防止同个任务执行多次从而启动多个进程,而各个进程又不能正常结束,直到耗尽服务器资源。
具体的,每个测试任务会有对应的测试用例,为了方便对测试任务进行管理,本发明实示例中,会根据预设规则创建测试计划,每个测试计划可以包括多个测试用例(对应测试任务)。平台在执行测试操作时,首先查询所有的待执行的测试计划,然后顺序执行测试计划和测试计划中的用例。在执行某个测试用例之前会检查Redis中是否存在使用相同数据源的用例,如果存在则等待,否则将该测试用例用到的数据源写入Redis,然后执行用例,等到用例执行完成则删除该用例的Redis数据源数据。
S3:将所述当前测试结果数据与历史版本的所述待测试应用程序的历史测试结果数据按照预设规则进行比对,获取比对结果。
具体的,本发明实施例中,设置将待测试应用程序的历史测试结果数据存储在基线数据库中,在单个用例执行过程中,首先导入造数模板中配置的数据到测试任务的实际库中,然后导入结果模板中的数据到基线数据库中,然后启动测试任务,等到任务执行完成后,查询测试任务实际库中的结果数据与基线数据库中的基线数据进行对比,生成比对结果。
为了提高测试结果数据校验的效率,采用将当前测试结果数据与历史版本的待测试应用程序的历史测试结果数据按照预设规则进行比对,根据比对结果判断当前测试是否通过。
S4:根据所述比对结果确定当前版本的所述待测试应用程序是否测试通过。
具体的,如果比对结果满足预设要求,则判定当前测试通过,若不满足,则判定当前测试失败。
作为一种较优的实施方式,本发明实施例中,所述接收当前版本的待测试应用程序的测试请求,根据所述测试请求生成对应的测试任务包括:
接收当前版本的待测试应用程序的测试请求,根据所述测试请求以及预设数据模板生成对应的测试任务,所述数据模板用于配置所述测试任务的配置数据。
具体的,本发明实施例支持不同数据源的接入与对比。由于不同测试任务使用的数据源可以各不相同,甚至多种数据源同时使用,不同数据源存储的数据格式也不甚相同。本发明实施例中通过模板管理实现支持各种数据源的连接、操作以及数据存储,并能够对不同类型数据源的数据格式进行转换和对比。模板管理包括数据模板和消息模板管理,模板分为造数模板和结果模板两种类型,造数模板作用于测试用例的输入数据,结果模板作用于测试用例的输出数据。即此处数据模板用于配置不同数据源(如MySQL、Redis、HTTP等)的造数模板和结果模板。消息模板主要配置发送者的消息,作用于消费者的输入数据。
作为一种较优的实施方式,本发明实施例中,所述将所述当前测试结果数据与历史版本的所述待测试应用程序的历史测试结果数据按照预设规则进行比对,获取比对结果包括:
将所述当前测试结果数据中的每一测试操作对应的结果数据与所述历史测试数据中相应的结果数据进行比较,获取比对结果。
具体的,本发明实施例中,不对预设规则做具体限制,用户可以根据实际需求进行设置。如排除某些对比字段,如id、create_time、update_time等字段。
作为一种较优的实施方式,本发明实施例中,所述方法还包括:
判断所述当前版本的待测试应用程序相比于所述历史版本的待测试应用程序的代码逻辑是否有变更;
所述根据所述比对结果确定当前版本的所述待测试应用程序是否测试通过包括:
若所述当前版本的待测试应用程序相比于所述历史版本的待测试应用程序的代码逻辑有变更,则获取所述比对结果中变更后代码逻辑对应的结果数据,判断所述结果数据是否符合预设要求,若满足,则确定当前版本的所述待测试应用程序测试通过。
具体的,应用程序的代码变更后,会影响自动化用例的回归。如当当前版本的待测试应用程序相比于历史版本的待测试应用程序的代码逻辑是否有变更时,该代码逻辑对应的执行结果数据就会随之改变。因而在根据比对结果确定当前版本的所述待测试应用程序是否测试通过时,需要针对变更过的代码逻辑对应的比对结果进行查验,如果结果数据符合预设要求,则确定当前版本的待测试应用程序测试通过,否则,确定其不通过。
作为一种较优的实施方式,本发明实施例中,所述方法还包括:
将所述当前测试结果数据作为历史测试结果数据与所述当前版本的待测试应用程序关联存储至基线数据库中,所述基线数据库用于存储历史测试数据。
具体的,在获取到当前测试结果数据后,本发明实施例中,设置将当前测试结果数据也存储至基线数据库中,以便作为历史结果数据供后续测试操作进行比对。在存储前,可以按照一定规则对其进行检查,若满足要求,则进行存储,否则不进行存储。
由于不同数据源存储的数据格式不相同,因此在进行存储时,可以将其导入到预设的结果数据模块中在进行存储,也可以先直接存储,然后在进行具体比对时,先将其导入到结果数据模块,在进行比对,这里可以根据用户的实际需求进行选择。
作为一种较优的实施方式,本发明实施例中,所述执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,获取当前测试结果数据包括:
执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,根据预设的结果数据模块生成当前测试结果数据。
具体的,由于不同数据源存储的数据格式不相同,因此在生成当前测试结果数据时,可以将执行结果导入到预设的结果数据模块中以生成当前测试结果数据。
作为一种较优的实施方式,本发明实施例中,所述测试任务包括Saturn任务或Shell任务中的至少一种。
图4是根据一示例性实施例示出的对比测试装置的结构示意图,该装置包括:
任务生成模块,用于接收当前版本的待测试应用程序的测试请求,根据所述测试请求生成对应的测试任务;
测试执行模块,用于执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,获取当前测试结果数据;
结果比对模块,用于将所述当前测试结果数据与历史版本的所述待测试应用程序的历史测试结果数据按照预设规则进行比对,获取比对结果;
测试判断模块,用于根据所述比对结果确定当前版本的所述待测试应用程序是否测试通过。
作为一种较优的实施方式,本发明实施例中,所述任务生成模块具体用于:
接收当前版本的待测试应用程序的测试请求,根据所述测试请求以及预设数据模板生成对应的测试任务,所述数据模板用于配置所述测试任务的配置数据。
作为一种较优的实施方式,本发明实施例中,所述结果比对模块具体用于:
将所述当前测试结果数据中的每一测试操作对应的结果数据与所述历史测试数据中相应的结果数据进行比较,获取比对结果。
作为一种较优的实施方式,本发明实施例中,所述装置还包括:
变更判断模块,用于判断所述当前版本的待测试应用程序相比于所述历史版本的待测试应用程序的代码逻辑是否有变更;
所述测试判断模块具体用于若所述当前版本的待测试应用程序相比于所述历史版本的待测试应用程序的代码逻辑有变更,则获取所述比对结果中变更后代码逻辑对应的结果数据,判断所述结果数据是否符合预设要求,若满足,则确定当前版本的所述待测试应用程序测试通过。
作为一种较优的实施方式,本发明实施例中,所述装置还包括:
数据存储模块,用于将所述当前测试结果数据作为历史测试结果数据与所述当前版本的待测试应用程序关联存储至基线数据库中,所述基线数据库用于存储历史测试数据。
作为一种较优的实施方式,本发明实施例中,所述测试执行模块具体用于:
执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,根据预设的结果数据模块生成当前测试结果数据。
作为一种较优的实施方式,本发明实施例中,所述测试任务包括Saturn任务或Shell任务中的至少一种。
图5是根据一示例性实施例示出的计算机设备的内部结构示意图,参照图5所示,该计算机设备包括通过***总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种执行计划的优化方法。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
作为一种较优的实施方式,本发明实施例中,计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现以下步骤:
接收当前版本的待测试应用程序的测试请求,根据所述测试请求生成对应的测试任务;
执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,获取当前测试结果数据;
将所述当前测试结果数据与历史版本的所述待测试应用程序的历史测试结果数据按照预设规则进行比对,获取比对结果;
根据所述比对结果确定当前版本的所述待测试应用程序是否测试通过。
作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:
接收当前版本的待测试应用程序的测试请求,根据所述测试请求以及预设数据模板生成对应的测试任务,所述数据模板用于配置所述测试任务的配置数据。
作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:
将所述当前测试结果数据中的每一测试操作对应的结果数据与所述历史测试数据中相应的结果数据进行比较,获取比对结果。
作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:
判断所述当前版本的待测试应用程序相比于所述历史版本的待测试应用程序的代码逻辑是否有变更;
若所述当前版本的待测试应用程序相比于所述历史版本的待测试应用程序的代码逻辑有变更,则获取所述比对结果中变更后代码逻辑对应的结果数据,判断所述结果数据是否符合预设要求,若满足,则确定当前版本的所述待测试应用程序测试通过。
作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:
将所述当前测试结果数据作为历史测试结果数据与所述当前版本的待测试应用程序关联存储至基线数据库中,所述基线数据库用于存储历史测试数据。
作为一种较优的实施方式,本发明实施例中,处理器执行计算机程序时还实现以下步骤:
执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,根据预设的结果数据模块生成当前测试结果数据。
本发明实施例中,还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如下步骤:
接收当前版本的待测试应用程序的测试请求,根据所述测试请求生成对应的测试任务;
执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,获取当前测试结果数据;
将所述当前测试结果数据与历史版本的所述待测试应用程序的历史测试结果数据按照预设规则进行比对,获取比对结果;
根据所述比对结果确定当前版本的所述待测试应用程序是否测试通过。
作为一种较优的实施方式,本发明实施例中,所述计算机程序被处理器执行时,还实现如下步骤:
接收当前版本的待测试应用程序的测试请求,根据所述测试请求以及预设数据模板生成对应的测试任务,所述数据模板用于配置所述测试任务的配置数据。
作为一种较优的实施方式,本发明实施例中,所述计算机程序被处理器执行时,还实现如下步骤:
将所述当前测试结果数据中的每一测试操作对应的结果数据与所述历史测试数据中相应的结果数据进行比较,获取比对结果。
作为一种较优的实施方式,本发明实施例中,所述计算机程序被处理器执行时,还实现如下步骤:
判断所述当前版本的待测试应用程序相比于所述历史版本的待测试应用程序的代码逻辑是否有变更;
若所述当前版本的待测试应用程序相比于所述历史版本的待测试应用程序的代码逻辑有变更,则获取所述比对结果中变更后代码逻辑对应的结果数据,判断所述结果数据是否符合预设要求,若满足,则确定当前版本的所述待测试应用程序测试通过。
作为一种较优的实施方式,本发明实施例中,所述计算机程序被处理器执行时,还实现如下步骤:
将所述当前测试结果数据作为历史测试结果数据与所述当前版本的待测试应用程序关联存储至基线数据库中,所述基线数据库用于存储历史测试数据。
作为一种较优的实施方式,本发明实施例中,所述计算机程序被处理器执行时,还实现如下步骤:
执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,根据预设的结果数据模块生成当前测试结果数据。
综上所述,本发明实施例提供的技术方案带来的有益效果是:
本发明实施例提供的对比测试方法、装置、计算机设备及存储介质,通过接收当前版本的待测试应用程序的测试请求,根据所述测试请求生成对应的测试任务,执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,获取当前测试结果数据,将所述当前测试结果数据与历史版本的所述待测试应用程序的历史测试结果数据按照预设规则进行比对,获取比对结果,根据所述比对结果确定当前版本的所述待测试应用程序是否测试通过,应对时间紧、需求大的软件测试场景,提高了软件测试人员的效率、节省了测试时间,并且大幅提升了软件测试质量、缩短测试时长,实现自动化执行配置的测试用例和计划并反馈测试结果数据;
进一步的,通过接收当前版本的待测试应用程序的测试请求,根据所述测试请求以及预设数据模板生成对应的测试任务,所述数据模板用于配置所述测试任务的配置数据,并且在获取到当前测试结果数据后,将所述当前测试结果数据作为历史测试结果数据与所述当前版本的待测试应用程序关联存储至基线数据库中,所述基线数据库用于存储历史测试数据,实现对后台任务处理不同数据源数据的对比验证。
需要说明的是:上述实施例提供的对比测试装置在触发对比业务时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的对比测试装置与对比测试方法实施例属于同一构思,即该装置是基于该对比测试方法的,其具体实现过程详见方法实施例,这里不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种对比测试方法,其特征在于,所述方法包括如下步骤:
接收当前版本的待测试应用程序的测试请求,根据所述测试请求生成对应的测试任务;
执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,获取当前测试结果数据;
将所述当前测试结果数据与历史版本的所述待测试应用程序的历史测试结果数据按照预设规则进行比对,获取比对结果;
根据所述比对结果确定当前版本的所述待测试应用程序是否测试通过。
2.根据权利要求1所述的对比测试方法,其特征在于,所述接收当前版本的待测试应用程序的测试请求,根据所述测试请求生成对应的测试任务包括:
接收当前版本的待测试应用程序的测试请求,根据所述测试请求以及预设数据模板生成对应的测试任务,所述数据模板用于配置所述测试任务的配置数据。
3.根据权利要求1或2所述的对比测试方法,其特征在于,所述将所述当前测试结果数据与历史版本的所述待测试应用程序的历史测试结果数据按照预设规则进行比对,获取比对结果包括:
将所述当前测试结果数据中的每一测试操作对应的结果数据与所述历史测试数据中相应的结果数据进行比较,获取比对结果。
4.根据权利要求1或2所述的对比测试方法,其特征在于,所述方法还包括:
判断所述当前版本的待测试应用程序相比于所述历史版本的待测试应用程序的代码逻辑是否有变更;
所述根据所述比对结果确定当前版本的所述待测试应用程序是否测试通过包括:
若所述当前版本的待测试应用程序相比于所述历史版本的待测试应用程序的代码逻辑有变更,则获取所述比对结果中变更后代码逻辑对应的结果数据,判断所述结果数据是否符合预设要求,若满足,则确定当前版本的所述待测试应用程序测试通过。
5.根据权利要求1或2所述的对比测试方法,其特征在于,所述方法还包括:
将所述当前测试结果数据作为历史测试结果数据与所述当前版本的待测试应用程序关联存储至基线数据库中,所述基线数据库用于存储历史测试数据。
6.根据权利要求1或2所述的对比测试方法,其特征在于,所述执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,获取当前测试结果数据包括:
执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,根据预设的结果数据模块生成当前测试结果数据。
7.根据权利要求1或2所述的对比测试方法,其特征在于,所述测试任务包括Saturn任务或Shell任务中的至少一种。
8.一种对比测试装置,其特征在于,所述装置包括:
任务生成模块,用于接收当前版本的待测试应用程序的测试请求,根据所述测试请求生成对应的测试任务;
测试执行模块,用于执行所述测试任务,对当前版本的所述待测试应用程序执行相应的测试操作,获取当前测试结果数据;
结果比对模块,用于将所述当前测试结果数据与历史版本的所述待测试应用程序的历史测试结果数据按照预设规则进行比对,获取比对结果;
测试判断模块,用于根据所述比对结果确定当前版本的所述待测试应用程序是否测试通过。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011573621.0A CN112631919A (zh) | 2020-12-25 | 2020-12-25 | 一种对比测试方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011573621.0A CN112631919A (zh) | 2020-12-25 | 2020-12-25 | 一种对比测试方法、装置、计算机设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112631919A true CN112631919A (zh) | 2021-04-09 |
Family
ID=75325760
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011573621.0A Pending CN112631919A (zh) | 2020-12-25 | 2020-12-25 | 一种对比测试方法、装置、计算机设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112631919A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113849418A (zh) * | 2021-11-30 | 2021-12-28 | 阿里云计算有限公司 | 代码质量调试方法、服务器、用户设备及存储介质 |
CN114168565A (zh) * | 2021-12-10 | 2022-03-11 | 北京宇信科技集团股份有限公司 | 业务规则模型的回溯测试方法、装置、***及决策引擎 |
CN114255155A (zh) * | 2022-02-24 | 2022-03-29 | 荣耀终端有限公司 | 一种图形处理器测试方法和电子设备 |
CN116187625A (zh) * | 2023-04-24 | 2023-05-30 | 中国西安卫星测控中心 | 基于位运算的航天测运控资源调度计划比对方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107741903A (zh) * | 2017-09-11 | 2018-02-27 | 平安科技(深圳)有限公司 | 应用程序兼容性测试方法、装置、计算机设备和存储介质 |
CN109960653A (zh) * | 2019-02-18 | 2019-07-02 | 天津五八到家科技有限公司 | 回归测试方法、装置、设备和存储介质 |
CN110096429A (zh) * | 2019-03-18 | 2019-08-06 | 深圳壹账通智能科技有限公司 | 测试报告生成方法、装置、设备及存储介质 |
CN111858382A (zh) * | 2020-08-03 | 2020-10-30 | 北京达佳互联信息技术有限公司 | 应用程序测试方法、装置、服务器、***及存储介质 |
-
2020
- 2020-12-25 CN CN202011573621.0A patent/CN112631919A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107741903A (zh) * | 2017-09-11 | 2018-02-27 | 平安科技(深圳)有限公司 | 应用程序兼容性测试方法、装置、计算机设备和存储介质 |
CN109960653A (zh) * | 2019-02-18 | 2019-07-02 | 天津五八到家科技有限公司 | 回归测试方法、装置、设备和存储介质 |
CN110096429A (zh) * | 2019-03-18 | 2019-08-06 | 深圳壹账通智能科技有限公司 | 测试报告生成方法、装置、设备及存储介质 |
CN111858382A (zh) * | 2020-08-03 | 2020-10-30 | 北京达佳互联信息技术有限公司 | 应用程序测试方法、装置、服务器、***及存储介质 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113849418A (zh) * | 2021-11-30 | 2021-12-28 | 阿里云计算有限公司 | 代码质量调试方法、服务器、用户设备及存储介质 |
CN114168565A (zh) * | 2021-12-10 | 2022-03-11 | 北京宇信科技集团股份有限公司 | 业务规则模型的回溯测试方法、装置、***及决策引擎 |
CN114168565B (zh) * | 2021-12-10 | 2022-07-08 | 北京宇信科技集团股份有限公司 | 业务规则模型的回溯测试方法、装置、***及决策引擎 |
CN114255155A (zh) * | 2022-02-24 | 2022-03-29 | 荣耀终端有限公司 | 一种图形处理器测试方法和电子设备 |
CN116187625A (zh) * | 2023-04-24 | 2023-05-30 | 中国西安卫星测控中心 | 基于位运算的航天测运控资源调度计划比对方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112631919A (zh) | 一种对比测试方法、装置、计算机设备及存储介质 | |
CN107273286B (zh) | 针对任务应用的场景自动化测试平台及方法 | |
CN111159049B (zh) | 接口自动化测试方法及*** | |
CN112463144B (zh) | 分布式存储的命令行服务方法、***、终端及存储介质 | |
CN107302476B (zh) | 一种测试异步交互***的自动化测试方法与*** | |
CN107608901B (zh) | 基于Jmeter的测试方法及装置、存储介质、电子设备 | |
CN108923997B (zh) | 一种基于python的云服务节点自动测试方法及装置 | |
CN112286806A (zh) | 自动化测试方法、装置、存储介质及电子设备 | |
CN109977012B (zh) | ***的联调测试方法、装置、设备及计算机可读存储介质 | |
CN114003451B (zh) | 一种接口测试方法、装置、***及介质 | |
CN115422063A (zh) | 一种低代码接口自动化***、电子设备及存储介质 | |
CN112433944A (zh) | 业务测试方法、装置、计算机设备和存储介质 | |
CN112579446A (zh) | 一种接口测试方法、装置、电子设备和存储介质 | |
CN112579569A (zh) | 一种数据迁移方法和装置 | |
CN115480746A (zh) | 数据处理任务的执行文件生成方法、装置、设备及介质 | |
CN115994085A (zh) | 代码覆盖率的测试处理方法、装置、设备及存储介质 | |
CN112988578A (zh) | 一种自动化测试方法和装置 | |
Kranzlmüller et al. | NOPE: A nondeterministic program evaluator | |
CN107562629B (zh) | 用于测试的方法及装置 | |
CN112463574A (zh) | 软件测试方法、装置、***、设备和存储介质 | |
CN112965910B (zh) | 自动化回归测试方法、装置、电子设备、存储介质 | |
CN114936152A (zh) | 应用测试方法及设备 | |
CN113254350A (zh) | 一种Flink作业测试方法、装置、设备及存储介质 | |
CN112346994A (zh) | 一种测试信息关联方法、装置、计算机设备及存储介质 | |
CN112948195A (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 |