CN108874661B - 测试映射关系库生成方法、装置、计算机设备和存储介质 - Google Patents
测试映射关系库生成方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN108874661B CN108874661B CN201810428427.XA CN201810428427A CN108874661B CN 108874661 B CN108874661 B CN 108874661B CN 201810428427 A CN201810428427 A CN 201810428427A CN 108874661 B CN108874661 B CN 108874661B
- Authority
- CN
- China
- Prior art keywords
- function
- test
- test case
- mapping
- library
- 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/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
Abstract
本申请涉及一种测试映射关系库生成方法、装置、计算机设备和存储介质。方法包括:从测试用例存储库中获取预存储的测试用例。从应用程序库中获取代码段,并通过代码段执行测试用例。当测试用例执行成功时,则从应用程序库中提取执行成功的代码段。提取执行成功的代码段中包含的函数,将函数作为与测试用例对应的映射函数。将测试用例与映射函数关联存储至测试映射关系库。采用本方法能够自动建立应用程序代码段中包含的函数与测试用例之间的对应关系,从而自动建立测试映射关系库,提高效率。
Description
技术领域
本申请涉及测试技术领域,特别是涉及一种测试映射关系库生成方法、装置、计算机设备和存储介质。
背景技术
随着计算机技术的发展,越来越多的行业都需要使用计算机软件,而对使用的计算机软件需要进行大量的测试,一般会编写相应的测试用例对开发的计算机软件进行测试。
对计算机软件进行测试时,需要获取到应用程序代码段以及相应的测试用例,即需要建立应用程序代码段中包含的函数和测试用例的映射关系。传统地,一般通过有经验的测试人员手动建立的方式来进行,但手动建立映射关系的方式效率低下。
发明内容
基于此,有必要针对上述技术问题,提供一种能够提高测试映射关系库建立效率的测试映射关系库生成方法、装置、计算机设备和存储介质。
一种测试映射关系库生成方法,所述方法包括:
从测试用例存储库中获取预存储的测试用例;
从应用程序库中获取代码段,并通过所述代码段执行所述测试用例;
当所述测试用例执行成功时,则从所述应用程序库中提取执行成功的代码段;
提取所述执行成功的代码段中包含的函数,将所述函数作为与所述测试用例对应的映射函数;
将所述测试用例与所述映射函数关联存储至测试映射关系库。
在其中一个实施例中,在将所述测试用例与所述映射函数关联存储至测试映射关系库之前,还包括:
当所述应用程序库中的所述代码段有修改时,则提取修改的代码段;
提取所述修改的代码段中对应的修改函数,查询所述修改函数是否存储在所述测试映射关系库中;
当所述修改函数未存储在所述测试映射关系库中时,则接收添加指令;
根据所述添加指令获取与所述修改函数对应的测试用例;
将所述修改函数以及修改函数对应的测试用例添加至所述测试映射关系库中。
在其中一个实施例中,所述方法还包括:
接收测试映射关系库修改指令,所述修改指令携带第一应用版本号;
将所述第一应用版本号与所述测试映射关系库中的所述映射函数对应的第二应用版本号进行比对;
当所述第一应用版本号与所述第二应用版本号相同时,则根据所述测试映射关系库修改指令,查询所述第二版本号对应的映射函数,提取所述映射函数对应的测试用例进行修改。
在其中一个实施例中,所述方法还包括:
获取所述测试用例的预设执行次数;
根据所述执行次数,从所述应用程序库中提取所述代码段,采用所述代码段按照所述执行次数执行所述测试用例;
提取执行所述测试用例为执行成功的代码段;
提取所述代码段中包含的函数作为执行函数,计算所述执行函数的权重;
选取所述权重小于预设值的所述执行函数,将所述权重小于预设值的执行函数与所述测试用例对应的所述映射函数进行比对;
当所述权重小于预设值的执行函数与所述测试用例对应的映射函数比对成功时,则将所述映射函数与所述测试用例之间的关联关系删除。
在其中一个实施例中,所述方法还包括:
计算所述测试映射关系库中不同的所述测试用例对应的所述映射函数的相似度;
当所述相似度大于预设值时,则将所述相似度大于预设值的所述映射函数以及对应的所述测试用例进行显示;
接收输入的映射关系去重指令,所述映射关系去重指令指示有待删除的所述测试用例以及所述测试用例对应的映射函数;
根据所述映射关系去重指令,将指示的待删除的所述测试用例以及对应的所述映射函数进行删除。
在其中一个实施例中,所述将所述测试用例与所述对应的映射函数进行关联的得到测试映射关系库之后,还包括:
接收到测试指令,所述测试指令携带有待测函数;
在所述测试映射关系库中查询与所述待测函数相匹配的所述映射函数,查询所述映射函数对应的所述测试用例是否携带有使用标识;
当所述测试用例携带有所述使用标识时,则将所述待测函数添加等待标签;
当所述测试用例的使用标识被删除时,则获取所述待测试用例对所述待测函数进行测试。
在其中一个实施例中,所述当接收到测试指令时,则根据所述测试指令中指示的待测试映射函数在所述测试映射关系库中查询对应的所述测试用例是否携带有使用标识之后,还包括:
当所述测试用例未携带有所述使用标识时,则通过与所述待测函数匹配的映射函数执行所述测试用例;
接收所述待测函数执行所述测试用例的执行反馈,所述执行反馈携带有应用标识;
查询所述测试映射关系库中与所述待测函数对应的所述映射函数是否携带有所述应用标识;
当所述映射函数未携带有所述应用标识时,则将所述应用标识与所述映射函数对应添加。
一种测试映射关系库生成装置,所述装置包括:
获取模块,用于从测试用例存储库中获取预存储的测试用例;
执行模块,用于从应用程序库中获取代码段,并通过所述代码段执行所述测试用例;
第一提取模块,用于当所述测试用例执行成功时,则从所述应用程序库中提取执行成功的代码段;
第二提取模块,用于提取所述执行成功的代码段中包含的函数,将所述函数作为与所述测试用例对应的映射函数;
存储模块,用于将所述测试用例与所述映射函数关联存储至测试映射关系库。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法的步骤。
上述测试映射关系库生成方法、装置、计算机设备和存储介质,将测试用例存储库中存储的测试用例与应用程序库中执行测试用例成功的代码段中包含的函数作为映射函数,将测试用例与映射函数对应存储至测试映射关系库中,从而无需通过测试人员手动查找相应的应用程序代码段以及测试用例之间的关联,从而建立应用程序代码段中包含的函数与测试用例之间的对应关系,从而自动建立测试映射关系库,提高效率。
附图说明
图1为一个实施例中测试映射关系库生成方法的应用场景图;
图2为一个实施例中测试映射关系库生成方法的流程示意图;
图3为一个实施例中添加映射关系步骤的流程示意图;
图4为一个实施例中测试映射关系库生成装置的结构框图;
图5为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
本申请提供的测试映射生成方法,可以应用于如图1所示的应用环境中。其中,服务器存储有测试用例存储库以及应用程序库,服务器从测试用例库中获取预存储的测试用例,从应用程序库中获取代码段,并通过代码段执行测试用例,当对测试用例执行成功时,则从应用程序库中提取执行成功的代码段,进而提取执行成功的代码段中包含的函数,将函数作为与测试用例对应的映射函数,将测试用例与映射函数关联存储至测试映射关系库中。服务器可以用独立的服务器或者是多个服务器组成的服务器集群来实现。
在一个实施例中,如图2所示,提供了一种测试映射关系库生成方法,以该方法应用于图1中的服务器为例进行说明,包括以下步骤:
S202:从测试用例存储库中获取预存储的测试用例。
具体地,测试用例是指设置有相应的测试参数的测试需求,测试用例可以是设置有相应的测试输入、执行条件以及预期结果的测试需求,从而采用相应的应用程序执行该测试用例从而得到对应的结果。测试用例存储库是指预存在服务器上的包含有不同的测试用例的数据库,测试用例存储库可以存储有测试在线登录功能的测试用例、测试用例存储库可以存储有测试在线下订单功能的测试用例等。具体地,服务器从预存储的测试用例存储库中分别获取不同的测试用例。例如,服务器分别获取测试登录功能的测试用例、获取测试下单功能的测试用例、获取测试取消订单功能的测试用例等。
S204:从应用程序库中获取代码段,并通过所述代码段执行所述测试用例。
具体地,应用程序库中存储有不同的应用程序的实现不同功能对应的代码段,应用程序库中可以存储有实现在软件中登录功能的代码段,例如存储有实现软件中下订单功能的代码段等,应用程序库中存储的代码段可以根据对应的测试用例中的测试输入、执行条件进行运行,从而得到测试用例对应的结果。代码段是指包含有不同的函数的程序段,代码段可以实现不同的功能,例如,通过运行代码段,可以实现登录功能、付款功能等。具体地,测试映射关系库生成库从测试用例存储库中分别获取预存储的测试用例,从而获取应用程序库中的代码段,根据测试用例中的测试输入与执行条件运行从应用程序库中获取的代码段。
S206:当所述测试用例执行成功时,则从所述应用程序库中提取执行成功的代码段。
具体地,当服务器从应用程序库中获取到代码段,进而采用获取到的代码段依次执行不同的测试用例,当运行的代码段得到与任一测试用例对应的结果相同的执行结果时,则该得到相同的执行结果的运行的代码段在执行该测试用例时为成功执行该测试用例,进而将执行该测试用例的代码段从应用程序库中提取出来。例如,测试用例存储有测试用例A,测试用例B,测试用例C,应用程序库中存储的代码段有代码段a,代码段b,代码段c等,则从测试用例库中获取测试用例A,采用应用程序库中存储的代码段a,代码段b与代码段c分别执行测试用例A,当采用代码段a执行测试用例A时,代码段a运行的结果与测试用例A对应的结果相同,则代码段a执行测试用例A为执行成功,因此将代码段a从应用程序库中进行提取,也即采用相同的方法分别提取执行测试用例B与测试用例C的代码段。
S208:提取所述执行成功的代码段中包含的函数,将函数作为与所述测试用例对应的映射函数。
具体地,映射函数是指包含在成功执行测试用例的代码段中,与测试用例相对应的函数。服务器提取到成功执行不同测试用例所对应的代码段,代码段中包含有不同的函数,服务器将测试用例对应执行成功的代码段进行提取,进而逐行读取相应的代码段,当读取到代码段中函数名时,则此时读取到代码段中的函数,进而读取代码段中的下一个函数名,得到下一个函数,直至所有的代码段读取完成,则将读取到的函数提取出来作为相应的映射函数。例如,按照上述方法,测试用例A执行成功的代码段为代码段a,测试用例B执行成功的代码段为代码段b,测试用例C执行成功的代码段为代码段c,进而读取代码段a中的函数,当读取到函数名为a1时,则此时读取到测试用例中的函数为a1,进而读取代码段中的下一个函数名,当读取到下一个函数名为a2时,则读取的下一个函数为a2,直至读取完代码段a中的所有函数,将所有函数提取出来作为映射函数。
S210:将所述测试用例与所述映射函数关联存储至测试映射关系库。
具体地,测试映射关系库是指存储有测试用例以及执行成功测试用例的代码段中所包含的函数的数据库。当服务器提取出的测试用例以及提取出来可以执行成功测试用例的代码段时,进一步提取相应的代码段中包含的函数作为映射函数,进而将提取出的测试用例与测试用例对应的映射函数进行关联,从而存储至测试映射关系库中。例如,如上述步骤,测试用例A对应的映射函数为 a1,a2,则将测试用例A与映射函数a1和a2进行关联,存储至测试映射关系库中,采用相同的方法,将测试用例存储库中的测试用例分别提取到对应的映射函数,将测试用例与对应的映射函数进行关联存储至测试映射关系库,如依次得到测试用例B关联的映射函数b1、b2和b3,将测试用例B与映射函数b1、 b2和b3对应存储至测试映射关系库从而生成测试用例与映射函数之间的映射关系,也即可以直接根据待测函数,查找测试映射关系库中的映射函数,从而选取与映射函数对应的测试用例即可对待测函数进行测试。
上述测试映射关系库生成方法中,服务器从测试用例库中获取预存储的测试用例,进而从应用程序库中获取代码段,并通过代码段执行测试用例,将测试用例执行成功的代码段中的函数进行提取作为映射函数,将被执行成功的测试用例与映射函数进行关联存储到测试映射关系库中,从而将测试用例库中的测试用例以及应用程序库中存储的代码段中的函数建立映射关系,也即可以自动建立应用程序代中包含的函数与测试用例之间的映射关系,从而生成测试映射关系库,提高建立映射关系生成库的效率。
在其中一个实施例中,请参见图3,提供一映射关系添加步骤的流程图,映射关系添加步骤,也即在将测试用例与映射函数关联存储至测试映射关系库之前,还可以包括:S302:当查询到应用程序库中的代码段有修改时,则提取修改的代码段。S304:提取修改的代码段中对应的修改函数,查询修改函数是否存储在测试映射关系库中。S306:当修改函数未存储在测试映射关系库中时,则接收添加指令。S308:根据添加指令获取与修改函数对应的测试用例。S310:将修改函数以及修改函数对应的测试用例添加至测试映射关系库中。
具体地,修改函数是指包含在查询到的修改的代码段中的函数,例如,查询到的修改的代码段为代码段A,代码段A中包含有函数a,则函数a为修改函数。服务器对应用程序库按照查询逻辑查询,查询逻辑可以是预设的查询的代码段行数,将预设的代码段行数的代码段实时进行查询,进而将当前时刻查询到的预设的代码段行数与上一次进行查询预设的代码段行数的代码段进行比对,当比对的结果为查询到预设的代码段行数的代码段有修改时,则将查询到的有修改的代码段进行提取,进而查询提取到的有修改的代码段中的函数,将有修改的代码段中的函数作为修改函数,进而将修改函数与测试映射关系库中存储的映射函数逐一进行匹配,当未匹配成功时,则修改函数未存储在测试映射关系库中,也即应用程序库中存储的代码段有更改,而未将更改的代码段存储至测试映射关系库中,则服务器在显示界面上显示相应的提示信息,进而用户根据提示信息进行选择,服务器根据用户选择的提示信息生成相应的添加指令,服务器接收到相应的添加指令则获取与修改函数对应的测试用例,进而将修改函数以及获取到的与修改函数对应的测试用例添加到测试映射关系库中进一步更新测试映射关系库。
需要说明的是,还可以预设查询时间,例如预设查询时间为一周查询一次、两周查询一次、一月查询一次、具体的查询日期等,当服务器查询到系统时间到达预设查询时间时,则服务器对应用程序库中的代码段进行查询,当查询到应用程序库中的代码段存在修改时,则提取修改的代码段,进而查询修改的代码段中包含的函数作为修改函数并将修改函数进行提取,查询修改函数是否存储在测试映射关系库中,当修改函数未存储在测试映射关系库中时,则服务器接收添加指令,并根据添加指令获取修改函数对应的测试用例,进而将修改函数以及修改函数对应的测试用例添加到测试映射关系库中。
本实施例中,服务器可以查询应用程序库中的代码段,进而当应用程序库中的代码段进行修改而修改的代码段包含的函数未存储在测试映射关系库中时,则相对应的测试用例也未添加至测试映射关系库,进而服务器根据接收到的添加指令将修改的代码段中对应的修改函数以及与修改函数对应的测试用例添加至测试映射关系库中,从而可以避免进行修改的函数出现与测试用例之间的映射关系的遗漏,提高测试映射关系库的可用度。
在其中一个实施例中,测试映射关系库生成方法还可以包括:接收测试映射关系库修改指令,修改指令携带第一应用版本号。将第一应用版本号与测试映射关系库中的映射函数对应的第二应用版本号进行比对。当第一应用版本号与第二应用版本号相同时,则根据测试映射关系库修改指令,查询所述第二版本号对应的映射函数,提取所述映射函数对应的测试用例进行修改。
具体地,第一应用版本号接收到的修改指令中携带的版本标识,该版本标识已进行更新的应用程序的版本标识,第一应用版本号可以为数字、英文字符或中文字符等,例如,第一应用版本号为理财V1.0,则为映射函数所对应的代码段对应的理财应用程序的第一版本。第二应用版本号为应用程序库中的映射函数所对应的代码段实现相应功能的应用程序的版本标识,第一应用版本号可以为数字、英文字符或中文字符等。具体地,测试映射关系库中包含的映射函数对应有不同应用的应用版本号,当应用程序有版本的更新时,则存储在应用程序库中的有更改的应用程序对应的代码段也出现更改,则用户可以预先根据更改的代码段将代码段中包含的函数对应的测试用例在测试映射关系库中进行更改,可以是,当服务器接收到应用程序已进行版本更新的提示信息,也即接收到应用程序库中存储的应用程序的代码段进行了相应的更改的提示信息时,则用户根据相应的提示信息输入相应的修改指令,当服务器根据用户输入的修改指令,提取到修改指令上携带的第一版本号,也即目前已进行更新的应用程序的版本标识,服务器将提取到的第一版本号与测试映射关系库中存储的映射函数上对应的版本号进行逐一比对,当第一版本号与第二版本号进行比对成功时,则该映射函数已进行更改,进而需要将该映射函数对应的测试用例进行更改,从而保证选取更改的映射函数所对应的测试用例进行测试时不会出现测试失败,则服务器根据接收到的修改指令,将查找到的第二应用版本号对应的映射函数所对应的测试用例进行修改。
需要说明的是,当测试映射生成关系服务器查询到第一应用版本号与第二应用版本号相同时,则查询第二版本号对应的映射函数所对应的测试用例是否携带有更新标识,当携带有更新标识时,则表明该测试用例也进行对应的修改,当测试用例上未携带有相应的更新标识时,则该更新的应用程序虽进行更改,但测试用例并未对应更改,则将给第二应用版本号对应的映射函数所对应的测试用例进行更改。
本实施例中,服务器可以根据接收到的修改指令,将测试映射关系库中存在的已更改的应用程序的代码段中包含的映射函数所对应的测试用例进行更改,从而避免在测试过程中出现测试失败时才进行更改相应的测试用例,可以实现及时有效的对测试映射关系库进行维护,提高使用的准确性。
在其中一个实施例中,测试测试映射关系库生成方法还可以包括:获取测试用例的预设执行次数。根据执行次数,从应用程序库中提取代码段,采用代码段按照执行次数执行测试用例。提取执行测试用例为执行成功的代码段。提取代码段中包含的函数作为执行函数,计算执行函数的权重。选取权重小于预设值的执行函数,将权重小于预设值的执行函数与测试用例对应的映射函数进行比对。当权重小于预设值的执行函数与测试用例对应的映射函数比对成功时,则将映射函数与测试用例之间的关联关系删除。
具体地,在建立测试映射关系库时,当采用应用程序库中的存储的代码段执行相应的测试用例时,虽然得到相应的执行成功的代码段,但是由于存在有不同的定时任务,则由于同时在执行相应的测试用例以及定时任务,则提取到执行测试用例的代码段可能为执行相应的定时任务的代码段,进而对测试映射关系库中存储的测试用例以及对应的映射函数进行优化。具体地,根据测试用例存储库中的测试用例,设置有执行测试用例的执行次数,进而从应用程序库中提取相应的代码段按照执行次数执行测试用例,从而提取每次执行测试用例为执行成功的代码段,进而在每次执行成功的代码段中包含的函数作为执行函数,进而计算得到的执行函数的权重,也即进而分别将每次得到的执行函数进行对比,当在执行次数中每次包含有相同的执行函数都添加预设的第一权重,当在执行次数中未每次包含有相同的执行函数都添加预设的第二权重,且第一权重大于第二权重,由此可以得到在执行次数中每次包含的执行函数的权重,进而选取权重小于预设值的执行函数,该权重小于预设值的函数则为在执行定时任务时的代码段中包含的函数,则将该权重小于预设值的执行函数与映射数据库中对应的映射函数进行比对,当该权重小于预设值的执行函数与映射数据库中对应的映射函数比对成功时,则该映射函数与测试用例之间的关联是不准确的,则将该映射函数与测试用例之间的关联关系删除。
例如,设置有执行每个测试用例的执行次数为3次,进而从应用程序库中的提取相应的代码段对每个测试用例执行3次,进而提取对每个测试用例执行3 次中为执行成功的代码段,再提取执行成功的代码段中包含的函数作为执行函数,如,执行测试用例A为执行3次,第一次执行测试用例A包含的函数为函数a1、函数a2和函数a3,第二次执行测试用例A包含的函数为函数a1和函数 a2,第三次执行测试用例A包含的函数为函数a1和函数a2,则计算得到的执行函数的权重,也即计算函数a1、函数a2和函数a3的权重,则函数a1在三次执行测试用例A时都包含在执行成功的代码段中,则函数a1添加第一权重,为权重1,函数a2在三次执行测试用例A时都包含在执行成功的代码段中,则函数 a2添加有第一权重,为权重1,函数a2只包含在第一次执行测试用例A中的执行成功的代码段中,也即未包含在每次执行成功的代码段中,则添加第二权重,为权重0,因此得到函数a1的权重为1,函数a2的权重为2,函数a3的权重为 0,则权重最小于预设值0.1的函数a3为在执行定时任务时的代码段中包含的函数,则将函数a3与测试映射关系库中的映射函数逐一进行比对,当查找到映射函数a3,从而查找到映射函数a3对应的测试用例A,则将测试用例A与映射函数a3之间的关联关系删除。需要说明的是,定时任务是指定时执行代码段实现相关的功能,例如定时备份数据库,定时修改某些信息,订单30分钟自动消单等。执行次数还可以设置为4次、5次、6次等,第一权重可以设置为3、4、5 等,第二权重小于第一权重,可以对应设置为0、1、2等。
本实施例中,按照预设的执行次数执行测试用例,从而计算执行测试用例成功的代码段中包含的执行函数的权重,当权重小于预设值时,则执行函数对应的映射函数为执行定时任务等所使用的函数而不是与测试用例相对应的映射函数,将权重小于预设值的执行函数与测试映射关系库中的映射函数进行比对,当比对成功时,则将映射函数与测试用例之间的关联关系删除,从而进一步优化测试映射关系库,保证测试映射关系库与测试用例之间关联关系的准确性,提高测试映射关系库的适用性。
在其中一个实施例中,将测试用例与对应的映射函数进行关联的得到测试映射关系库之后,还可以包括:计算测试映射关系库中不同的测试用例对应的映射函数的相似度。当相似度大于预设值时,则将相似度大于预设值的映射函数以及对应的测试用例进行显示。接收输入的映射关系去重指令,映射关系去重指令指示有待删除的测试用例以及测试用例对应的映射函数。根据映射关系去重指令,将指示的待删除的测试用例以及对应的映射函数进行删除。
具体地,由于建立测试映射关系库是采用测试用例存储库中的测试用例以及应用程序库中存储的代码段中包含的函数进行关联存储,则可能会出现相同的函数在不同的应用程序中时,则编写了不同的测试用例用以测试,也即测试映射关系库中存储的相同的映射函数可能对应有不同的测试用例,则对测试映射关系库进行去重处理。具体地,服务器分别计算测试映射关系库中不同的测试用例对应的映射函数之间的相似度,计算相似度可以是,先计算测试用例之间对应的相同的函数的个数与不同的函数的个数之间的总数和,进而计算相同的函数的个数与总数和的值,当计算出不同测试用例对应的映射函数的相似度时,查询计算的相似度是否大于预设值,当相似度大于预设值时,则将相似度超过预设值的映射函数以及对应的测试用例进行显示,当在服务器上显示有相似度超过预设值的映射函数时,则用户可以选择是否从测试映射关系库中删除相似度超过预设值的映射函数以及测试用例,当用户选择从测试映射关系库中删除相似度超过预设值的映射函数以及对应的测试用例时,输入需要删除的具体映射函数以及对应的测试用例,从而生成映射关系去重指令,进而服务器根据映射关系去重指令,将对应的具体映射函数以及测试用例删除。
例如,测试映射关系库中包含有测试用例A和测试用例B,测试用例A对应的函数为函数a1、函数a2和函数a3,测试用例B对应的函数为函数a1、函数a2和函数a3,则计算测试用例A与测试用例B对应的映射函数的相似度,测试用例A与测试用例B中相同的函数为3个,不同的函数为0个,则计算相同的函数个数与不同的函数个数的总数和为3,将相同的函数3个与总数和3个计算比值,得到相似度为1,该相似度1超过预设相似度0.9,则将测试用例A 函数a1、函数a2和函数a3以及测试用例B和对应的映射函数函数a1、函数a2 和函数a3进行显示,用户可以选择是否从测试映射关系库中删除相似度超过预设值的映射函数以及测试用例,以及用户可以选择具体删除测试用例A以及对应的映射函数或者删除测试用例B以及对应的映射函数,例如当用户选择删除测试用例B以及测试用例B对应的映射函数,则根据用户选择生成相应的映射关系去重指令,进而服务器根据映射关系去重指令,将测试用例B以及测试用例B对应的映射函数删除,需要说明的是,相似度的预设值还可以设置为0.6、0.7、0.75、0.8等。
本实施例中,根据简单的计算测试用例对应的映射函数之间的相似度,即可查询查询到相似度超过预设值的映射函数以及对应的测试用例,计算简单,进而将相似度超过预设值的映射函数以及测试用例进行显示,从而根据相应的去重指令对指定的映射函数以及测试用例进行删除,保证得到的测试映射关系库精简而准确。
在其中一个实施例中,将测试用例与对应的映射函数进行关联的得到测试映射关系库之后,还可以包括:接收到测试指令,测试指令携带有待测函数。在测试映射关系库中查询与待测函数相匹配的映射函数,查询映射函数对应的测试用例是否携带有使用标识。当测试用例携带有使用标识时,则将待函数添加等待标签。当测试用例的使用标识被删除时,则获取待测试用例对待测函数进行测试。
具体地,使用标识是指显示测试用例正在使用中的标记,使用标识可以是文字标识,数字标识等,例如,当有测试用例正在使用时,则该测试用例可以携带有“使用中”的相关标记。当服务器将测试用例与映射函数建立关联并存储至测试映射关系库之后,则当有待测函数时,则根据待测函数查找到相同的映射函数,从而根据映射函数选取对应的测试用例直接作为待测函数的测试用例对待测函数进行测试,且由于建立的关联关系为映射函数与测试用例之间的关系,则映射函数可能会被包含至不同的应用程序的代码段中,例如,软件中提交订单和取消订单都需要登录功能,因此,登录功能相关的映射函数会分别包含在不同的应用程序代码段中,测试用例既可以对提交订单中的登录功能的映射函数进行测试,也可以对取消订单中的登录功能的映射函数进行测试。具体地,用户输入相应的待测函数,根据用户输入的待测函数,生成相应的测试指令,服务器接收到生成的测试指令时,提取测试指令中携带的待测函数,将待测函数逐一与测试映射关系库中的存储的映射函数进行匹配,当匹配成功时,则该待测函数可以采用匹配成功的映射函数对应的测试用例进行测试,进而服务器查询匹配成功的映射函数对应的测试用例是否携带有使用标识,当匹配成功的测试用例携带有使用标识时,则当前的测试用例正在对其他应用程序进行测试,则服务器将待测函数添加有等待标签,进而实时监测可以测试待测函数的测试用例,当监测到测试用例上的使用标识被删除时,则此时测试用例可以进行使用,进而获取该测试用例对待测函数进行测试。
本实施例中,可以采用待测函数与测试映射关系库中的映射函数进行匹配,当匹配成功时,则将映射函数对应的测试用例直接测试待测函数,则无需对待测函数再进行编写相应的测试用例,直接选取相应的测试用例,提高测试效率,当服务器接收到测试指令时,进而提取测试指令上携带的待测函数,进而从测试映射关系库中选取到待测函数对应的测试用例,并查询对应的测试用例是否携带有使用标识,当携带有使用标识时,则将待测函数添加等待标识,进而当测试用例上的使用标识被删除时则选取测试用例对待测函数进行测试,也即保证测试用例每次只在一个应用程序中的待测函数中执行,保证测试得到的结果准确。
在其中一个实施例中,当接收到测试指令时,则根据测试指令中指示的待测试映射函数在测试映射关系库中查询对应的测试用例是否携带有使用标识之后,还可以包括:当测试用例未携带有使用标识时,则通过与待测函数匹配的映射函数执行测试用例。接收待测函数执行测试用例执行反馈,执行反馈携带有应用标识。查询测试映射关系库中与待测函数对应的映射函数是否携带有应用标识。当映射函数未携带有应用标识时,则将应用标识与映射函数对应添加。
具体地,应用标识是指与映射函数对应的标识该映射函数来源与具体的应用程序的相关标签,应用标识可以是具体软件名称标识,可以是具体应用功能名称标识,例如,应用标识为贷款软件,应用标识为提交订单功能,也可以是具体某软件中的相关功能,如理财软件中提交订单功能。当服务器接收到测试指令时,提取测试指令中携带的待测函数,将待测函数逐一与测试映射关系库中的存储的映射函数进行匹配,当匹配成功时,则该待测函数可以采用匹配成功的映射函数对应的测试用例进行测试,进而服务器查询匹配成功的映射函数对应的测试用例是否携带有使用标识,当匹配成功的测试用例未携带有使用标识时,则选取与待测函数相匹配的映射函数对应的测试用例对待测函数进行测试,也即相应的待测函数执行选取到的测试用例,进而服务器接收待测函数执行测试用例的执行反馈,提取执行反馈上携带的应用标识,从而在测试映射关系库中查询与待测函数对应的映射函数上是否携带有该应用标识,当未携带有该应用标识时,则将该应用标识与该映射函数对应进行添加,也即将该映射函数与该应用标识进行关联,从而可以清晰反映映射函数对应的具体应用程序。
本实施例中,当选取的待测函数对应的测试用例未携带有使用标识时,则采用测试用例对待测函数进行,进而接收相应的执行反馈,并查询该执行反馈上携带的应用标识是否与映射函数对应存储在测试映射关系库中,当未对应存储在测试映射关系库中,则将应用标识与映射函数进行关联添加至测试映射关系库中,在执行测试过程中进一步对测试映射关系库中的映射函数、测试用例以及应用程序之间的关系进行优化与扩充,使得测试映射关系库更加准确。
应该理解的是,虽然图2-3的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图2-3中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图4所示,提供了一种测试映射关系库生成装置400,包括:获取模块410、执行模块420、第一提取模块430、第二提取模块440和存储模块450,其中:
获取模块410,用于从测试用例存储库中获取预存储的测试用例。
执行模块420,用于从应用程序库中获取代码段,并通过代码段执行测试用例。
第一提取模块430,用于当测试用例执行成功时,则从应用程序库中提取执行成功的代码段。
第二提取模块440,用于提取执行成功的代码段中包含的函数,将函数作为与测试用例对应的映射函数。
存储模块450,用于将测试用例与映射函数关联存储至测试映射关系库。
在其中一个实施例中,测试映射关系库生成装置400还可以包括:
修改代码段提取模块,用于当应用程序库中的代码段有修改时,则提取修改的代码段。
修改函数提取模块,用于提取修改的代码段中对应的修改函数,查询修改函数是否存储在测试映射关系库中。
添加指令接收模块,用于当修改函数未存储在测试映射关系库中时,则接收添加指令。
测试用例获取模块,用于根据添加指令获取与修改函数对应的测试用例。
添加模块,用于将修改函数以及修改函数对应的测试用例添加至测试映射关系库中。
在其中一个实施例中,测试映射关系库生成装置400还可以包括:
修改指令接收模块,用于接收测试映射关系库修改指令,修改指令携带第一应用版本号。
比对模块,用于将第一应用版本号与测试映射关系库中的映射函数对应的第二应用版本号进行比对。
修改模块,用于当所述第一应用版本号与所述第二应用版本号相同时,则根据所述测试映射关系库修改指令,查询所述第二版本号对应的映射函数,提取所述映射函数对应的测试用例进行修改。
在其中一个实施例中,测试映射关系库生成装置400还可以包括:
执行次数获取模块,用于获取测试用例的预设执行次数。
执行函数获取模块,用于根据所述执行次数,从所述应用程序库中提取所述代码段,采用所述代码段按照所述执行次数执行所述测试用例;还用于提取执行所述测试用例为执行成功的代码段。
计算模块,提取所述代码段中包含的函数作为执行函数,计算所述执行函数的权重。
选取比对模块,用于选取权重小于预设值的执行函数,将权重小于预设值的执行函数与测试用例对应的映射函数进行比对。
第一删除模块,用于当权重小于预设值的执行函数与测试用例对应的映射函数比对成功时,则将映射函数与测试用例之间的关联关系删除。
在其中一个实施例中,测试映射关系库生成装置400还可以包括:
相似度计算模块,用于计算测试映射关系库中不同的测试用例对应的映射函数的相似度。
显示模块,用于当相似度大于预设值时,则将相似度大于预设值的映射函数以及对应的测试用例进行显示。
映射关系去重指令接收模块,用于接收输入的映射关系去重指令,映射关系去重指令指示有待删除的测试用例以及测试用例对应的映射函数。
第二删除模块,用于根据映射关系去重指令,将指示的待删除的测试用例以及对应的映射函数进行删除。
在其中一个实施例中,测试映射关系库生成装置400还可以包括:
测试指令接收模块,用于接收到测试指令,测试指令携带有待测函数。
查询模块,用于在测试映射关系库中查询与待测函数相匹配的映射函数,查询映射函数对应的测试用例是否携带有使用标识。
等待标签添加模块,用于当测试用例携带有使用标识时,则将待测函数添加等待标签。
测试模块,用于当测试用例的使用标识被删除时,则获取待测试用例对待测函数进行测试。
在其中一个实施例中,测试映射关系库生成装置400还可以包括:
测试用例执行模块,用于当测试用例未携带有使用标识时,则通过与待测函数匹配的映射函数执行测试用例。
应用标识接收模块,用于接收待测函数执行测试用例的执行反馈,执行反馈携带有应用标识。
查询应用标识模块,用于查询测试映射关系库中与待测函数对应的映射函数是否携带有应用标识。
添加应用标识模块,用于当映射函数未携带有应用标识时,则将应用标识与映射函数对应添加。
关于测试映射关系库生成装置的具体限定可以参见上文中对于测试映射关系库生成方法的限定,在此不再赘述。上述测试映射关系库生成装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图5所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储测试映射关系库生成数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种测试映射关系库生成方法。
本领域技术人员可以理解,图5中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,该存储器存储有计算机程序,该处理器执行计算机程序时实现以下步骤:从测试用例存储库中获取预存储的测试用例。从应用程序库中获取代码段,并通过代码段执行测试用例。当测试用例执行成功时,则从应用程序库中提取执行成功的代码段。提取执行成功的代码段中包含的函数,将函数作为与测试用例对应的映射函数。将测试用例与映射函数关联存储至测试测试映射关系库。
在其中一个实施例中,处理器执行计算机程序时还实现以下步骤:当应用程序库中的代码段存在修改时,则提取修改的代码段。提取修改的代码段中对应的修改函数,查询修改函数是否存储在测试映射关系库中。当修改函数未存储在测试映射关系库中时,则接收添加指令。根据添加指令获取与修改函数对应的测试用例。将修改函数以及修改函数对应的测试用例添加至测试测试映射关系库中。
在其中一个实施例中,处理器执行计算机程序时还实现以下步骤:接收测试映射关系库修改指令,修改指令携带第一应用版本号。将第一应用版本号与测试映射关系库中的映射函数对应的第二应用版本号进行比对。当第一应用版本号与第二应用版本号相同时,则根据测试映射关系库修改指令,查询第二版本号对应的映射函数,提取映射函数对应的测试用例进行修改。
在其中一个实施例中,处理器执行计算机程序时还实现以下步骤:获取测试用例的预设执行次数。根据执行次数,从应用程序库中提取代码段,采用代码段按照执行次数执行测试用例。提取执行测试用例为执行成功的代码段。提取代码段中包含的函数作为执行函数,计算执行函数的权重。选取权重小于预设值的执行函数,将权重小于预设值的执行函数与测试用例对应的映射函数进行比对。当权重小于预设值的执行函数与测试用例对应的映射函数比对成功时,则将映射函数与测试用例之间的关联关系删除。
在其中一个实施例中,处理器执行计算机程序时还实现以下步骤:计算测试映射关系库中不同的测试用例对应的映射函数的相似度。当相似度大于预设值时,则将相似度大于预设值的映射函数以及对应的测试用例进行显示。接收输入的映射关系去重指令,映射关系去重指令指示有待删除的测试用例以及测试用例对应的映射函数。根据映射关系去重指令,将指示的待删除的测试用例以及对应的映射函数进行删除。
在其中一个实施例中,处理器执行计算机程序时实现将测试用例与对应的映射函数进行关联的得到测试映射关系库之后,还可以包括:接收到测试指令,测试指令携带有待测函数。在测试映射关系库中查询与待测函数相匹配的映射函数,查询映射函数对应的测试用例是否携带有使用标识。当测试用例携带有使用标识时,则将待测函数添加等待标签。当测试用例的使用标识被删除时,则获取待测试用例对待测函数进行测试。
在其中一个实施例中,处理器执行计算机程序时实现当接收到测试指令时,则根据测试指令中指示的待测试映射函数在测试映射关系库中查询对应的测试用例是否携带有使用标识之后,还可以包括:当测试用例未携带有使用标识时,则通过与待测函数匹配的映射函数执行测试用例。接收待测函数执行测试用例的执行反馈,执行反馈携带有应用标识。查询测试映射关系库中与待测函数对应的映射函数是否携带有应用标识。当映射函数未携带有应用标识时,则将应用标识与映射函数对应添加。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
从测试用例存储库中获取预存储的测试用例。从应用程序库中获取代码段,并通过代码段执行测试用例。当测试用例执行成功时,则从应用程序库中提取执行成功的代码段。提取执行成功的代码段中包含的函数,将函数作为与测试用例对应的映射函数。将测试用例与映射函数关联存储至测试映射关系库。
在其中一个实施例中,计算机程序被处理器执行时还实现以下步骤:当应用程序库中的代码段有修改时,则提取修改的代码段。提取修改的代码段中对应的修改函数,查询修改函数是否存储在测试映射关系库中。当修改函数未存储在测试映射关系库中时,则接收添加指令。根据添加指令获取与修改函数对应的测试用例。将修改函数以及修改函数对应的测试用例添加至测试映射关系库中。
在其中一个实施例中,计算机程序被处理器执行时还实现以下步骤:接收测试映射关系库修改指令,修改指令携带第一应用版本号。将第一应用版本号与测试映射关系库中的映射函数对应的第二应用版本号进行比对。当第一应用版本号与第二应用版本号相同时,则根据测试映射关系库修改指令,查询第二版本号对应的映射函数,提取映射函数对应的测试用例进行修改。
在其中一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取测试用例的预设执行次数。根据执行次数,从应用程序库中提取代码段,采用代码段按照执行次数执行测试用例。提取执行测试用例为执行成功的代码段。提取代码段中包含的函数作为执行函数,计算执行函数的权重。选取权重小于预设值的执行函数,将权重小于预设值的执行函数与测试用例对应的映射函数进行比对。当权重小于预设值的执行函数与测试用例对应的映射函数比对成功时,则将映射函数与测试用例之间的关联关系删除。
在其中一个实施例中,计算机程序被处理器执行时还实现以下步骤:计算测试映射关系库中不同的测试用例对应的映射函数的相似度。当相似度大于预设值时,则将相似度大于预设值的映射函数以及对应的测试用例进行显示。接收输入的映射关系去重指令,映射关系去重指令指示有待删除的测试用例以及测试用例对应的映射函数。根据映射关系去重指令,将指示的待删除的测试用例以及对应的映射函数进行删除。
在其中一个实施例中,计算机程序被处理器执行时实现将测试用例与对应的映射函数进行关联的得到测试映射关系库之后,还可以包括:接收到测试指令,测试指令携带有待测函数。在测试映射关系库中查询与待测函数相匹配的映射函数,查询映射函数对应的测试用例是否携带有使用标识。当测试用例携带有使用标识时,则将待测函数添加等待标签。当测试用例的使用标识被删除时,则获取待测试用例对待测函数进行测试。
在其中一个实施例中,计算机程序被处理器执行时实现当接收到测试指令时,则根据测试指令中指示的待测试映射函数在测试映射关系库中查询对应的测试用例是否携带有使用标识之后,还可以包括:当测试用例未携带有使用标识时,则通过与待测函数匹配的映射函数执行测试用例。接收待测函数执行测试用例的执行反馈,执行反馈携带有应用标识。查询测试映射关系库中与待测函数对应的映射函数是否携带有应用标识。当映射函数未携带有应用标识时,则将应用标识与映射函数对应添加。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程 ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限, RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步 DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM (ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus) 直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种测试映射关系库生成方法,所述方法包括:
从测试用例存储库中获取预存储的测试用例;
从应用程序库中获取代码段,并通过所述代码段执行所述测试用例;
当所述测试用例执行成功时,则从所述应用程序库中提取执行成功的代码段;
提取所述执行成功的代码段中包含的函数,将所述函数作为与所述测试用例对应的映射函数;
将所述测试用例与所述映射函数关联存储至测试映射关系库;
接收到测试指令,所述测试指令携带有待测函数;
在所述测试映射关系库中查询与所述待测函数相匹配的所述映射函数,查询所述映射函数对应的所述测试用例是否携带有使用标识;
当所述测试用例携带有所述使用标识时,则将所述待测函数添加等待标签;
当所述测试用例的使用标识被删除时,则获取待测试用例对所述待测函数进行测试。
2.根据权利要求1所述的方法,其特征在于,在将所述测试用例与所述映射函数关联存储至测试映射关系库之前,还包括:
当查询到所述应用程序库中的所述代码段有修改时,则提取修改的代码段;
提取所述修改的代码段中的修改函数,查询所述修改函数是否存储在所述测试映射关系库中;
当所述修改函数未存储在所述测试映射关系库中时,则接收添加指令;
根据所述添加指令获取与所述修改函数对应的测试用例;
将所述修改函数以及修改函数对应的测试用例添加至所述测试映射关系库中。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
接收测试映射关系库修改指令,所述修改指令携带第一应用版本号;
将所述第一应用版本号与所述测试映射关系库中的所述映射函数对应的第二应用版本号进行比对;
当所述第一应用版本号与所述第二应用版本号相同时,则根据所述测试映射关系库修改指令,查询所述第二应用版本号对应的映射函数,提取所述映射函数对应的测试用例进行修改。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述测试用例的预设执行次数;
根据所述执行次数,从所述应用程序库中提取所述代码段,采用所述代码段按照所述执行次数执行所述测试用例;
提取执行所述测试用例为执行成功的代码段;
提取所述代码段中包含的函数作为执行函数,计算所述执行函数的权重;
选取所述权重小于预设值的所述执行函数,将所述权重小于预设值的执行函数与所述测试用例对应的所述映射函数进行比对;
当所述权重小于预设值的执行函数与所述测试用例对应的映射函数比对成功时,则将所述映射函数与所述测试用例之间的关联关系删除。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
计算所述测试映射关系库中不同的所述测试用例对应的所述映射函数的相似度;
当所述相似度大于预设值时,则将所述相似度大于预设值的所述映射函数以及对应的所述测试用例进行显示;
接收输入的映射关系去重指令,所述映射关系去重指令指示有待删除的所述测试用例以及所述测试用例对应的映射函数;
根据所述映射关系去重指令,将指示的待删除的所述测试用例以及对应的所述映射函数进行删除。
6.根据权利要求1所述的方法,其特征在于,所述当接收到测试指令时,则根据所述测试指令中指示的待测试映射函数在所述测试映射关系库中查询对应的所述测试用例是否携带有使用标识之后,还包括:
当所述测试用例未携带有所述使用标识时,则通过与所述待测函数匹配的映射函数执行所述测试用例;
接收所述待测函数执行所述测试用例的执行反馈,所述执行反馈携带有应用标识;
查询所述测试映射关系库中与所述待测函数对应的所述映射函数是否携带有所述应用标识;
当所述映射函数未携带有所述应用标识时,则将所述应用标识与所述映射函数对应添加。
7.一种测试映射关系库生成装置,其特征在于,所述装置包括:
获取模块,用于从测试用例存储库中获取预存储的测试用例;
执行模块,用于从应用程序库中获取代码段,并通过所述代码段执行所述测试用例;
第一提取模块,用于当所述测试用例执行成功时,则从所述应用程序库中提取执行成功的代码段;
第二提取模块,用于提取所述执行成功的代码段中包含的函数,将所述函数作为与所述测试用例对应的映射函数;
存储模块,用于将所述测试用例与所述映射函数关联存储至测试映射关系库;
测试指令接收模块,用于接收到测试指令,所述测试指令携带有待测函数;
查询模块,用于在所述测试映射关系库中查询与所述待测函数相匹配的所述映射函数,查询所述映射函数对应的所述测试用例是否携带有使用标识;
等待标签添加模块,用于当所述测试用例携带有所述使用标识时,则将所述待测函数添加等待标签;
测试模块,用于当所述测试用例的使用标识被删除时,则获取待测试用例对所述待测函数进行测试。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
修改代码段提取模块,用于当查询到所述应用程序库中的所述代码段有修改时,则提取修改的代码段;
修改函数提取模块,用于提取所述修改的代码段中的修改函数,查询所述修改函数是否存储在所述测试映射关系库中;
添加指令接收模块,用于当所述修改函数未存储在所述测试映射关系库中时,则接收添加指令;
测试用例获取模块,用于根据所述添加指令获取与所述修改函数对应的测试用例;
添加模块,用于将所述修改函数以及修改函数对应的测试用例添加至所述测试映射关系库中。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至6中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至6中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810428427.XA CN108874661B (zh) | 2018-05-07 | 2018-05-07 | 测试映射关系库生成方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810428427.XA CN108874661B (zh) | 2018-05-07 | 2018-05-07 | 测试映射关系库生成方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108874661A CN108874661A (zh) | 2018-11-23 |
CN108874661B true CN108874661B (zh) | 2020-12-22 |
Family
ID=64327113
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810428427.XA Active CN108874661B (zh) | 2018-05-07 | 2018-05-07 | 测试映射关系库生成方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108874661B (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111352824B (zh) * | 2018-12-21 | 2023-07-07 | 北京金山云网络技术有限公司 | 测试方法、装置及计算机设备 |
CN111722999A (zh) * | 2019-03-22 | 2020-09-29 | 天津五八到家科技有限公司 | 数据测试方法、装置、电子设备及系统 |
CN110147317A (zh) * | 2019-04-19 | 2019-08-20 | 平安普惠企业管理有限公司 | 代码测试方法及装置、电子设备和存储介质 |
CN110442370B (zh) * | 2019-07-30 | 2023-10-27 | 北京奇艺世纪科技有限公司 | 一种测试用例查询方法及装置 |
CN113094252B (zh) * | 2019-12-23 | 2023-09-29 | 腾讯科技(深圳)有限公司 | 测试用例生成方法、装置、计算机设备及存储介质 |
CN112732681B (zh) * | 2021-04-01 | 2021-06-08 | 壹药网科技(上海)股份有限公司 | 数据平台迁移方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6505342B1 (en) * | 2000-05-31 | 2003-01-07 | Siemens Corporate Research, Inc. | System and method for functional testing of distributed, component-based software |
CN104657256A (zh) * | 2013-11-19 | 2015-05-27 | 阿里巴巴集团控股有限公司 | 一种收集用例与代码之间映射关系的方法和装置 |
CN106528399A (zh) * | 2015-09-15 | 2017-03-22 | 腾讯科技(深圳)有限公司 | 一种测试用例确定方法及装置 |
CN106776350A (zh) * | 2017-02-10 | 2017-05-31 | 腾讯科技(深圳)有限公司 | 一种程序的精准测试方法和装置 |
-
2018
- 2018-05-07 CN CN201810428427.XA patent/CN108874661B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6505342B1 (en) * | 2000-05-31 | 2003-01-07 | Siemens Corporate Research, Inc. | System and method for functional testing of distributed, component-based software |
CN104657256A (zh) * | 2013-11-19 | 2015-05-27 | 阿里巴巴集团控股有限公司 | 一种收集用例与代码之间映射关系的方法和装置 |
CN106528399A (zh) * | 2015-09-15 | 2017-03-22 | 腾讯科技(深圳)有限公司 | 一种测试用例确定方法及装置 |
CN106776350A (zh) * | 2017-02-10 | 2017-05-31 | 腾讯科技(深圳)有限公司 | 一种程序的精准测试方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108874661A (zh) | 2018-11-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108874661B (zh) | 测试映射关系库生成方法、装置、计算机设备和存储介质 | |
CN109446068B (zh) | 接口测试方法、装置、计算机设备和存储介质 | |
CN111563051B (zh) | 基于爬虫的数据核验方法、装置、计算机设备及存储介质 | |
CN110941555B (zh) | 测试用例推荐方法、装置、计算机设备和存储介质 | |
CN110362479B (zh) | 系统升级测试方法和系统 | |
CN112395202B (zh) | 接口自动化测试方法、装置、计算机设备和存储介质 | |
CN112328499A (zh) | 一种测试数据生成方法、装置、设备及介质 | |
CN111124898B (zh) | 问答系统测试方法、装置、计算机设备和存储介质 | |
CN108399125B (zh) | 自动化测试方法、装置、计算机设备和存储介质 | |
CN111324375A (zh) | 代码管理方法、装置、计算机设备和存储介质 | |
CN113282513B (zh) | 接口测试案例的生成方法、装置、计算机设备及存储介质 | |
CN108334452B (zh) | 规则数据移交测试方法、装置、计算机设备和存储介质 | |
CN113535563A (zh) | 测试用例去重方法、装置、计算机设备及存储介质 | |
CN109684205B (zh) | 系统测试方法、装置、电子设备及存储介质 | |
CN111339535A (zh) | 面向智能合约代码的漏洞预测方法、系统、计算机设备和存储介质 | |
CN114527974B (zh) | 软件产品的业务功能实现方法、装置和计算机设备 | |
CN112835779A (zh) | 测试用例确定方法、装置、计算机设备 | |
CN110362478A (zh) | 应用升级测试方法、装置、计算机设备和存储介质 | |
CN109240906B (zh) | 数据库配置信息适配方法、装置、计算机设备和存储介质 | |
CN114595159B (zh) | 测试数据生成方法、装置、设备及存储介质 | |
CN115705297A (zh) | 代码调用检测方法、装置、计算机设备以及存储介质 | |
CN109299224B (zh) | 基于Zabbix的解决方案查询方法、装置、计算机设备 | |
CN107704484B (zh) | 网页错误信息处理方法、装置、计算机设备和存储介质 | |
CN110321284B (zh) | 测试数据录入方法、装置、计算机设备和存储介质 | |
CN115269402B (zh) | 测试数据匹配方法、装置、计算机设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20200122 Address after: 200120 floor 15, 1333 Lujiazui Ring Road, China (Shanghai) pilot Free Trade Zone, Pudong New Area, Shanghai Applicant after: Weikun (Shanghai) Technology Service Co., Ltd Address before: 200120 13 floor, 1333 Lujiazui Road, Pudong New Area free trade pilot area, Shanghai. Applicant before: Lujiazui Shanghai international financial assets market Limited by Share Ltd |
|
TA01 | Transfer of patent application right | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |