CN113448864A - 一种测试覆盖率确定方法及其相关设备 - Google Patents
一种测试覆盖率确定方法及其相关设备 Download PDFInfo
- Publication number
- CN113448864A CN113448864A CN202110796054.3A CN202110796054A CN113448864A CN 113448864 A CN113448864 A CN 113448864A CN 202110796054 A CN202110796054 A CN 202110796054A CN 113448864 A CN113448864 A CN 113448864A
- Authority
- CN
- China
- Prior art keywords
- access
- access method
- importance
- determining
- nth
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 299
- 238000012360 testing method Methods 0.000 title claims abstract description 127
- 238000004590 computer program Methods 0.000 claims description 16
- 238000007619 statistical method Methods 0.000 claims description 10
- 238000004458 analytical method Methods 0.000 claims description 5
- 238000012512 characterization method Methods 0.000 claims description 5
- 230000008569 process Effects 0.000 abstract description 20
- 230000000875 corresponding effect Effects 0.000 description 97
- 238000013507 mapping Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000005314 correlation function Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000004044 response 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
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
技术领域
本申请涉及数据处理技术领域,尤其涉及一种测试覆盖率确定方法及其相关设备。
背景技术
当对一个被测试对象进行单元测试时,通常需要分析该被测试对象的测试覆盖率。其中,被测试对象的测试覆盖率是指测试系统覆盖该被测试对象的程度。
然而,因现有的测试覆盖率确定方法存在缺陷,使得利用现有的测试覆盖率确定方法针对被测试对象确定的测试覆盖率不准确。
发明内容
为了解决现有技术中存在的以上技术问题,本申请提供一种测试覆盖率确定方法及其相关设备,能够提高覆盖率准确性。
为了实现上述目的,本申请实施例提供的技术方案如下:
本申请实施例提供一种测试覆盖率确定方法,所述方法包括:
获取被测试对象中至少一个访问请求对应的数据访问记录;其中,所述访问请求对应的数据访问记录包括数据库表访问信息、访问方法、访问次数、访问时间中的至少一个;
根据所述至少一个访问请求对应的数据访问记录,确定至少一个访问方法的重要度;
根据所述至少一个访问方法的重要度和所述被测试对象的单元测试信息,确定所述被测试对象的测试覆盖率。
在一种可能的实施方式中,所述根据所述至少一个访问请求对应的数据访问记录,确定至少一个访问方法的重要度,包括:
对所述至少一个访问请求对应的数据访问记录进行统计分析,得到至少一个访问方法的总调用次数;
根据各个访问方法的总调用次数,分别确定各个访问方法的重要度。
在一种可能的实施方式中,若所述至少一个访问方法包括第1个访问方法至第N个访问方法,则第n个访问方法的重要度的确定过程,包括:
将所述第1个访问方法的总调用次数至所述第N个访问方法的总调用次数进行加和,得到调用次数总和;
将第n个访问方法的总调用次数与所述调用次数总和之间的比值,确定为所述第n个访问方法的重要度;其中,n为正整数,n≤N,N为正整数。
在一种可能的实施方式中,所述根据所述至少一个访问请求对应的数据访问记录,确定至少一个访问方法的重要度,包括:
根据所述至少一个访问请求对应的数据访问记录和所述至少一个访问请求的重要等级,确定至少一个访问方法的重要度。
在一种可能的实施方式中,若所述至少一个访问方法包括第1个访问方法至第N个访问方法,则第n个访问方法的重要度的确定过程,包括:
根据各个访问请求的重要等级,确定各个访问请求对应的加权权重;
对各个访问请求对应的数据访问记录进行统计分析,得到各个访问请求对应的第n个访问方法的调用次数;
按照所述至少一个访问请求对应的加权权重,对所述至少一个访问请求对应的第n个访问方法的调用次数进行加权求和,得到所述第n个访问方法对应的调用次数加权和值;
根据所述第n个访问方法对应的调用次数加权和值,确定所述第n个访问方法的重要度。
在一种可能的实施方式中,所述根据所述至少一个访问方法的重要度和所述被测试对象的单元测试信息,确定所述被测试对象的测试覆盖率,包括:
对所述被测试对象的单元测试信息进行测试覆盖分析,得到所述至少一个访问方法的测试覆盖结果表征值;
按照所述至少一个访问方法的重要度,对所述至少一个访问方法的测试覆盖结果表征值进行加权求和,得到所述被测试对象的测试覆盖率。
本申请实施例还提供了一种测试覆盖率确定装置,包括:
记录获取单元,用于获取被测试对象中至少一个访问请求对应的数据访问记录;其中,所述访问请求对应的数据访问记录包括数据库表访问信息、访问方法、访问次数、访问时间中的至少一个;
重要度确定单元,用于根据所述至少一个访问请求对应的数据访问记录,确定至少一个访问方法的重要度;
覆盖率确定单元,用于根据所述至少一个访问方法的重要度和所述被测试对象的单元测试信息,确定所述被测试对象的测试覆盖率。
本申请实施例还提供了一种设备,所述设备包括处理器以及存储器:
所述存储器用于存储计算机程序;
所述处理器用于根据所述计算机程序执行本申请实施例提供的测试覆盖率确定方法的任一实施方式。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行本申请实施例提供的测试覆盖率确定方法的任一实施方式。
本申请实施例还提供了一种计算机程序产品,所述计算机程序产品在终端设备上运行时,使得所述终端设备执行本申请实施例提供的测试覆盖率确定方法的任一实施方式。
与现有技术相比,本申请实施例至少具有以下优点:
本申请实施例提供的技术方案中,对于一个被测试对象来说,先获取该被测试对象中至少一个访问请求对应的数据访问记录;其中,该访问请求对应的数据访问记录包括数据库表访问信息、访问方法、访问次数、访问时间中的至少一个;再根据该至少一个访问请求对应的数据访问记录,确定至少一个访问方法的重要度;最后,根据该至少一个访问方法的重要度和该被测试对象的单元测试信息,确定该被测试对象的测试覆盖率。
其中,因一个访问方法的重要度能够准确地表示出该访问方法对被测试对象所产生的影响程度,使得基于各个访问方法的重要度确定出的该被测试对象的测试覆盖率能够更准确地表示出该被测试对象在单元测试过程中的被覆盖程度,如此有利于提高覆盖率准确性。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本申请实施例提供的一种测试覆盖率确定方法的流程图;
图2为本申请实施例提供的一种测试覆盖率确定装置的结构示意图。
具体实施方式
发明人针对单元测试的研究中发现,对于一个被测试对象来说,该被测试对象所涉及的不同访问方法会对该被测试对象不同程度的影响;其具体为:若该被测试对象中所有访问请求针对一个访问方法的调用次数越多,则该访问方法对该被测试对象造成的影响程度越大,使得该访问方法在该被测试对象的单元测试过程中越应该被覆盖,从而使得该访问方法的测试覆盖结果表征值对被测试对象的测试覆盖率造成的影响越大;若该被测试对象中所有访问请求针对一个访问方法的调用次数越少,则该访问方法对该被测试对象造成的影响程度越小,使得该访问方法的测试覆盖结果表征值对被测试对象的测试覆盖率造成的影响越小。
基于上述发现,为了解决背景技术部分的技术问题,本申请实施例提供了一种测试覆盖率确定方法,该方法包括:先获取该被测试对象中至少一个访问请求对应的数据访问记录;其中,该访问请求对应的数据访问记录包括数据库表访问信息、访问方法、访问次数、访问时间中的至少一个;再根据该至少一个访问请求对应的数据访问记录,确定至少一个访问方法的重要度;最后,根据该至少一个访问方法的重要度和该被测试对象的单元测试信息,确定该被测试对象的测试覆盖率。
其中,因一个访问方法的重要度能够准确地表示出该访问方法对被测试对象所产生的影响程度,从而使得基于各个访问方法的重要度确定出的该被测试对象的测试覆盖率能够更准确地表示出该被测试对象在单元测试过程中的被覆盖程度,如此有利于提高覆盖率准确性。
另外,本申请实施例不限定测试覆盖率确定方法的执行主体,例如,本申请实施例提供的测试覆盖率确定方法可以应用于终端设备或服务器等数据处理设备。其中,终端设备可以为智能手机、计算机、个人数字助理(Personal Digital Assitant,PDA)或平板电脑等。服务器可以为独立服务器、集群服务器或云服务器。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
方法实施例一
参见图1,该图为本申请实施例提供的一种测试覆盖率确定方法的流程图。
本申请实施例提供的测试覆盖率确定方法,包括S1-S3:
S1:获取被测试对象中至少一个访问请求对应的数据访问记录。
其中,被测试对象是指需要进行单元测试的对象;而且,本申请实施例不限定被测试对象,例如,该被测试对象可以是一个软件或者一个软件中的最小可测试单元。
被测试对象中一个访问请求是指可以由该被测试对象进行响应的请求;而且本申请实施例不限定被测试对象中访问请求的个数,例如,该被测试对象可以针对M个访问请求进行响应。其中,M为正整数。
另外,本申请实施例不限定S1中“至少一个访问请求”,例如,若被测试对象可以针对M个访问请求进行响应,则S1中“至少一个访问请求”可以是指该M个访问请求。又如,在一些情况下,因不同访问请求具有不同的重要等级,故为了尽可能地提高单元测试效率,S1中“至少一个访问请求”可以是指该M个访问请求中重要等级达到预设等级阈值的访问请求。其中,一个访问请求的重要等级用于描述该访问请求针对被测试对象的重要程度;而且该访问请求的重要等级可以预先设定。预设等级阈值也可以预先设定。
一个访问请求对应的数据访问记录用于描述被测试对象针对该访问请求进行响应时所发生的数据访问行为;而且该访问请求对应的数据访问记录可以包括数据库表访问信息、访问方法、访问次数、访问时间中的至少一个。其中,数据库表访问信息是指被测试对象针对该访问请求进行响应时所访问的数据库表的相关描述信息。访问方法是指被测试对象针对该访问请求进行响应时访问数据库表所调用的可执行方法。访问次数是指被测试对象针对该访问请求进行响应时访问数据库表的发生次数。访问时间是指被测试对象针对该访问请求进行响应时访问数据库表的发生时间。
此外,本申请实施例不限定“数据访问记录”的获取方式,可以采用现有的或者未来出现的任一种能够获取到被测试对象中至少一个访问请求对应的数据访问记录的方法进行实施。
S2:根据至少一个访问请求对应的数据访问记录,确定至少一个访问方法的重要度。
其中,一个访问方法的重要度用于表示该访问方法对被测试对象所产生的影响程度。
另外,本申请实施例不限定S2的实施方式,例如,在一种可能的实施方式中,S2具体可以包括步骤11-步骤12:
步骤11:对至少一个访问请求对应的数据访问记录进行统计分析,得到该至少一个访问方法的总调用次数。
作为示例,若上述“至少一个访问请求”包括T个访问请求,且上述“至少一个访问方法”包括N个访问方法,则第n个访问方法的总调用次数的确定过程,包括步骤21-步骤22:
步骤21:对第t个访问请求对应的数据访问记录进行方法调用次数分析,得到第t个访问请求对应的第n个访问方法的调用次数。其中,t为正整数,t≤T,T为正整数,T≤M,M表示被测试对象能够响应的访问请求个数;n为正整数,n≤N,N为正整数。
其中,第t个访问请求对应的第n个访问方法的调用次数是指被测试对象针对该第t个访问请求进行响应时调用第n个访问方法的发生次数。
另外,本申请实施例不限定“第t个访问请求对应的第n个访问方法的调用次数”的确定过程,例如,若访问第g个数据库表时需要调用第n个访问方法,则可以根据第t个访问请求对应的数据访问记录中第g个数据库表的访问次数,确定第t个访问请求对应的第n个访问方法的调用次数(如,直接将第t个访问请求对应的数据访问记录中第g个数据库表的访问次数,确定为第t个访问请求对应的第n个访问方法的调用次数)。其中,g为正整数,g≤G,G为正整数,G表示数据库表的个数。
步骤22:将第1个访问请求对应的第n个访问方法的调用次数至第T个访问请求对应的第n个访问方法的调用次数进行加和,得到该第n个访问方法的总调用次数。其中,n为正整数,n≤N,N为正整数。
本申请实施例中,在获取到第1个访问请求对应的第n个访问方法的调用次数至第T个访问请求对应的第n个访问方法的调用次数之后,可以将该T个访问请求对应的第n个访问方法的调用次数之间的和值,确定为该第n个访问方法的总调用次数,以使该第n个访问方法的总调用次数用于表示出被测试对象针对该T个访问请求进行响应时调用第n个访问方法的发生次数,从而使得该第n个访问方法的总调用次数能够描述出该第n个访问方法对该被测试对象所产生的影响程度。
基于上述步骤11的相关内容可知,在获取到至少一个访问请求对应的数据访问记录之后,可以针对该至少一个访问请求对应的数据访问记录进行统计分析,确定出这些数据访问记录所涉及的至少一个访问方法的总调用次数,以使各个访问方法的总调用次数能够准确地表示出各个访问方法对该被测试对象所产生的影响程度。
步骤12:根据各个访问方法的总调用次数,分别确定各个访问方法的重要度。
作为示例,若上述“至少一个访问方法”包括第1个访问方法至第N个访问方法,则第n个访问方法的重要度的确定过程,包括步骤31-步骤32:
步骤31:将第1个访问方法的总调用次数至第N个访问方法的总调用次数进行加和,得到调用次数总和。
步骤32:将第n个访问方法的总调用次数与调用次数总和之间的比值,确定为第n个访问方法的重要度;其中,n为正整数,n≤N,N为正整数。
可见,在获取到至少一个访问方法的总调用次数之后,可以将各个访问方法的总调用次数与该至少一个访问方法的总调用次数的总和之间的比值,分别确定为各个访问方法的重要度,以使各个访问方法的重要度能够准确地表示出各个访问方法对该被测试对象所产生的影响程度。
基于上述步骤11至步骤12的相关内容可知,在获取到至少一个访问请求对应的数据访问记录之后,可以先从该至少一个访问请求对应的数据访问记录中分析得到这些数据访问记录所涉及的至少一个访问方法的总调用次数,以使各个访问方法的总调用次数能够准确地表示出各个访问方法对该被测试对象所产生的影响程度;再依据该至少一个访问方法的总调用次数,分别确定各个访问方法的重要度,以使各个访问方法的重要度能够准确地表示出各个访问方法对该被测试对象所产生的影响程度。
另外,为了进一步提高重要度的准确性,本申请实施例还提供了S2的另一种可能的实施方式,其具体可以包括:根据至少一个访问请求对应的数据访问记录和该至少一个访问请求的重要等级,确定至少一个访问方法的重要度。
作为示例,若上述“至少一个访问方法”包括第1个访问方法至第N个访问方法,则第n个访问方法的重要度的确定过程,包括步骤51-步骤54:
步骤51:根据各个访问请求的重要等级,确定各个访问请求对应的加权权重。
其中,一个访问请求对应的加权权重用于表示被测试对象针对该访问请求进行响应时所涉及的访问方法对该被测试对象的重要程度。
另外,本申请实施例不限定“访问请求对应的加权权重”,例如,一个访问请求对应的加权权重可以与该访问请求的重要等级正相关,也就是,若该访问请求的重要等级越高,则该访问请求对应的加权权重越大。
此外,本申请实施例不限定步骤51的实施方式,可以采用现有的或者未来出现的任一种正相关函数(例如,下文“预设映射关系”)进行实施。为了便于理解,下面结合示例进行说明。
作为示例,若上述“至少一个访问请求”包括T个访问请求,则第t个访问请求对应的加权权重的确定过程,具体可以包括:从预设映射关系中查询该第t个访问请求的重要等级对应的权重值,确定为该第t个访问请求对应的加权权重。其中,预设映射关系包括第t个访问请求的重要等级与该第t个访问请求的重要等级对应的权重值之间的对应关系。t为正整数,t≤T,T为正整数。需要说明的是,预设映射关系用于记录各个重要等级对应权重值。
基于上述步骤51的相关内容可知,在获取到至少一个访问请求之后,可以参考各个访问请求的重要等级,确定各个访问请求对应的加权权重,以使各个访问请求对应的加权权重能够表示被测试对象针对各个访问请求进行响应时所涉及的访问方法对该被测试对象的重要程度。
步骤52:对各个访问请求对应的数据访问记录进行统计分析,得到各个访问请求对应的第n个访问方法的调用次数。
其中,第t个访问请求对应的第n个访问方法的调用次数是指被测试对象针对该第t个访问请求进行响应时调用第n个访问方法的发生次数;而且“第t个访问请求对应的第n个访问方法的调用次数”的确定过程的相关内容请参见上文步骤21中相关内容。其中,t为正整数,t≤T,T为正整数,T≤M,M表示被测试对象能够响应的访问请求个数。
步骤53:按照至少一个访问请求对应的加权权重,对至少一个访问请求对应的第n个访问方法的调用次数进行加权求和,得到第n个访问方法对应的调用次数加权和值。
本申请实施例中,若上述“至少一个访问请求”包括T个访问请求,则在获取到T个访问请求对应的加权权重及其对应的第n个访问方法的调用次数之后,可以先利用第t个访问请求对应的加权权重与第t个访问请求对应的第n个访问方法的调用次数之间的乘积,确定为第t个访问请求对应的第n个访问方法的加权调用次数;其中,t为正整数,t≤T;然后,将第1个访问请求对应的第n个访问方法的加权调用次数至第T个访问请求对应的第n个访问方法的加权调用次数之间的和值,确定为第n个访问方法对应的调用次数加权和值。
步骤54:根据第n个访问方法对应的调用次数加权和值,确定第n个访问方法的重要度。
作为示例,第n个访问方法的重要度的确定过程,包括步骤61-步骤62:
步骤61:将第1个访问方法的调用次数加权和值至第N个访问方法的调用次数加权和值进行加和,得到调用次数加权总和。
步骤62:将第n个访问方法的调用次数加权和值与调用次数加权总和之间的比值,确定为第n个访问方法的重要度;其中,n为正整数,n≤N,N为正整数。
可见,在获取到至少一个访问方法的调用次数加权和值之后,可以将各个访问方法的调用次数加权和值与该至少一个访问方法的调用次数加权和值的总和之间的比值,分别确定为各个访问方法的重要度,以使各个访问方法的重要度能够准确地表示出各个访问方法对该被测试对象所产生的影响程度。
基于上述步骤51至步骤54的相关内容可知,在获取到至少一个访问请求对应的数据访问记录之后,可以参考该至少一个访问请求对应的数据访问记录以及该至少一个访问请求的重要等级,确定至少一个访问方法的重要度,以使各个访问方法的重要度能够更准确地表示出各个访问方法对该被测试对象所产生的影响程度。
基于上述S2的相关内容可知,在获取到被测试对象中至少一个访问请求对应的数据访问记录之后,可以从这些数据访问记录中挖掘出这些数据访问记录所涉及的至少一个访问方法的重要度,以使各个访问方法的重要度能够准确地表示出各个访问方法对该被测试对象所产生的影响程度。
S3:根据至少一个访问方法的重要度和被测试对象的单元测试信息,确定被测试对象的测试覆盖率。
其中,被测试对象的单元测试信息是指针对该被测试对象进行的单元测试过程所涉及的相关信息(如,过程描述信息、过程生成数据信息等)。
被测试对象的测试覆盖率用于表示针对该被测试对象进行的单元测试过程对该被测试对象的覆盖程度。
另外,本申请实施例不限定S3的实施方式,例如,在一种可能的实施方式下,S3具体可以包括S31-S32:
S31:对被测试对象的单元测试信息进行测试覆盖分析,得到至少一个访问方法的测试覆盖结果表征值。
其中,一个访问方法的测试覆盖结果表征值用于表示在针对该被测试对象进行的单元测试过程中是否覆盖了该访问方法(也就是,是否调用了该访问方法)。
另外,本申请实施例不限定S31的实施方式,可以采用现有的或者未来出现的任一种能够确定出针对该被测试对象进行的单元测试过程中是否覆盖了一个访问方法的方法进行实施。
S32:按照至少一个访问方法的重要度,对至少一个访问方法的测试覆盖结果表征值进行加权求和,得到被测试对象的测试覆盖率。
作为示例,若上述“至少一个访问方法”包括第1个访问方法至第N个访问方法,则S32可以采用公式(1)-(2)进行实施。
式中,Cobject表示被测试对象的测试覆盖率;In表示第n个访问方法的重要度;R(Fn)表示第n个访问方法的测试覆盖结果表征值,而且R(Fn)=1表示在针对该被测试对象进行的单元测试过程中覆盖了该第n个访问方法,R(Fn)=0表示在针对该被测试对象进行的单元测试过程中没有覆盖该第n个访问方法;Fn表示第n个访问方法;Acover表示在针对该被测试对象进行的单元测试过程中被覆盖的对象集合;n为正整数,n≤N,N为正整数。
基于上述S1至S3的相关内容可知,对于本申请实施例提供的测试覆盖率确定方法来说,先获取该被测试对象中至少一个访问请求对应的数据访问记录;其中,该访问请求对应的数据访问记录包括数据库表访问信息、访问方法、访问次数、访问时间中的至少一个;再根据该至少一个访问请求对应的数据访问记录,确定至少一个访问方法的重要度;最后,根据该至少一个访问方法的重要度和该被测试对象的单元测试信息,确定该被测试对象的测试覆盖率。
其中,因一个访问方法的重要度能够准确地表示出该访问方法对被测试对象所产生的影响程度,从而使得基于各个访问方法的重要度确定出的该被测试对象的测试覆盖率能够更准确地表示出该被测试对象在单元测试过程中的被覆盖程度,如此有利于提高覆盖率准确性。
基于上述方法实施例提供的测试覆盖率确定方法,本申请实施例还提供了一种测试覆盖率确定装置,下面结合附图进行解释和说明。
装置实施例
装置实施例提供的测试覆盖率确定装置的技术详情,请参照上述方法实施例。
参见图2,该图为本申请实施例提供的一种测试覆盖率确定装置的结构示意图。
本申请实施例提供的测试覆盖率确定装置200,包括:
记录获取单元201,用于获取被测试对象中至少一个访问请求对应的数据访问记录;其中,所述访问请求对应的数据访问记录包括数据库表访问信息、访问方法、访问次数、访问时间中的至少一个;
重要度确定单元202,用于根据所述至少一个访问请求对应的数据访问记录,确定至少一个访问方法的重要度;
覆盖率确定单元203,用于根据所述至少一个访问方法的重要度和所述被测试对象的单元测试信息,确定所述被测试对象的测试覆盖率。
在一种可能的实施方式中,所述重要度确定单元202,包括:
统计分析子单元,用于对所述至少一个访问请求对应的数据访问记录进行统计分析,得到至少一个访问方法的总调用次数;
重要度确定子单元,用于根据各个访问方法的总调用次数,分别确定各个访问方法的重要度。
在一种可能的实施方式中,所述重要度确定子单元,具体用于:
若所述至少一个访问方法包括第1个访问方法至第N个访问方法,则将所述第1个访问方法的总调用次数至所述第N个访问方法的总调用次数进行加和,得到调用次数总和;将第n个访问方法的总调用次数与所述调用次数总和之间的比值,确定为所述第n个访问方法的重要度;其中,n为正整数,n≤N,N为正整数。
在一种可能的实施方式中,所述重要度确定单元202,具体用于:
根据所述至少一个访问请求对应的数据访问记录和所述至少一个访问请求的重要等级,确定至少一个访问方法的重要度。
在一种可能的实施方式中,所述重要度确定单元202,具体用于:
若所述至少一个访问方法包括第1个访问方法至第N个访问方法,则根据各个访问请求的重要等级,确定各个访问请求对应的加权权重;
对各个访问请求对应的数据访问记录进行统计分析,得到各个访问请求对应的第n个访问方法的调用次数;
按照所述至少一个访问请求对应的加权权重,对所述至少一个访问请求对应的第n个访问方法的调用次数进行加权求和,得到所述第n个访问方法对应的调用次数加权和值;
根据所述第n个访问方法对应的调用次数加权和值,确定所述第n个访问方法的重要度。
在一种可能的实施方式中,所述覆盖率确定单元203,具体用于:
对所述被测试对象的单元测试信息进行测试覆盖分析,得到所述至少一个访问方法的测试覆盖结果表征值;
按照所述至少一个访问方法的重要度,对所述至少一个访问方法的测试覆盖结果表征值进行加权求和,得到所述被测试对象的测试覆盖率。
基于上述测试覆盖率确定装置200的相关内容可知,对于测试覆盖率确定装置200来说,先获取该被测试对象中至少一个访问请求对应的数据访问记录;其中,该访问请求对应的数据访问记录包括数据库表访问信息、访问方法、访问次数、访问时间中的至少一个;再根据该至少一个访问请求对应的数据访问记录,确定至少一个访问方法的重要度;最后,根据该至少一个访问方法的重要度和该被测试对象的单元测试信息,确定该被测试对象的测试覆盖率。
其中,因一个访问方法的重要度能够准确地表示出该访问方法对被测试对象所产生的影响程度,从而使得基于各个访问方法的重要度确定出的该被测试对象的测试覆盖率能够更准确地表示出该被测试对象在单元测试过程中的被覆盖程度,如此有利于提高覆盖率准确性。
进一步地,本申请实施例还提供了一种设备,所述设备包括处理器以及存储器:
所述存储器用于存储计算机程序;
所述处理器用于根据所述计算机程序执行本申请实施例提供的测试覆盖率确定方法的任一实施方式。
进一步地,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行本申请实施例提供的测试覆盖率确定方法的任一实施方式。
进一步地,本申请实施例还提供了一种计算机程序产品,所述计算机程序产品在终端设备上运行时,使得所述终端设备执行本申请实施例提供的测试覆盖率确定方法的任一实施方式。
应当理解,在本申请中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:只存在A,只存在B以及同时存在A和B三种情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制。虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明。任何熟悉本领域的技术人员,在不脱离本发明技术方案范围情况下,都可利用上述揭示的方法和技术内容对本发明技术方案做出许多可能的变动和修饰,或修改为等同变化的等效实施例。因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所做的任何简单修改、等同变化及修饰,均仍属于本发明技术方案保护的范围内。
Claims (10)
1.一种测试覆盖率确定方法,其特征在于,所述方法包括:
获取被测试对象中至少一个访问请求对应的数据访问记录;其中,所述访问请求对应的数据访问记录包括数据库表访问信息、访问方法、访问次数、访问时间中的至少一个;
根据所述至少一个访问请求对应的数据访问记录,确定至少一个访问方法的重要度;
根据所述至少一个访问方法的重要度和所述被测试对象的单元测试信息,确定所述被测试对象的测试覆盖率。
2.根据权利要求1所述的方法,其特征在于,所述根据所述至少一个访问请求对应的数据访问记录,确定至少一个访问方法的重要度,包括:
对所述至少一个访问请求对应的数据访问记录进行统计分析,得到至少一个访问方法的总调用次数;
根据各个访问方法的总调用次数,分别确定各个访问方法的重要度。
3.根据权利要求2所述的方法,其特征在于,若所述至少一个访问方法包括第1个访问方法至第N个访问方法,则第n个访问方法的重要度的确定过程,包括:
将所述第1个访问方法的总调用次数至所述第N个访问方法的总调用次数进行加和,得到调用次数总和;
将第n个访问方法的总调用次数与所述调用次数总和之间的比值,确定为所述第n个访问方法的重要度;其中,n为正整数,n≤N,N为正整数。
4.根据权利要求1所述的方法,其特征在于,所述根据所述至少一个访问请求对应的数据访问记录,确定至少一个访问方法的重要度,包括:
根据所述至少一个访问请求对应的数据访问记录和所述至少一个访问请求的重要等级,确定至少一个访问方法的重要度。
5.根据权利要求4所述的方法,其特征在于,若所述至少一个访问方法包括第1个访问方法至第N个访问方法,则第n个访问方法的重要度的确定过程,包括:
根据各个访问请求的重要等级,确定各个访问请求对应的加权权重;
对各个访问请求对应的数据访问记录进行统计分析,得到各个访问请求对应的第n个访问方法的调用次数;
按照所述至少一个访问请求对应的加权权重,对所述至少一个访问请求对应的第n个访问方法的调用次数进行加权求和,得到所述第n个访问方法对应的调用次数加权和值;
根据所述第n个访问方法对应的调用次数加权和值,确定所述第n个访问方法的重要度。
6.根据权利要求1所述的方法,其特征在于,所述根据所述至少一个访问方法的重要度和所述被测试对象的单元测试信息,确定所述被测试对象的测试覆盖率,包括:
对所述被测试对象的单元测试信息进行测试覆盖分析,得到所述至少一个访问方法的测试覆盖结果表征值;
按照所述至少一个访问方法的重要度,对所述至少一个访问方法的测试覆盖结果表征值进行加权求和,得到所述被测试对象的测试覆盖率。
7.一种测试覆盖率确定装置,其特征在于,包括:
记录获取单元,用于获取被测试对象中至少一个访问请求对应的数据访问记录;其中,所述访问请求对应的数据访问记录包括数据库表访问信息、访问方法、访问次数、访问时间中的至少一个;
重要度确定单元,用于根据所述至少一个访问请求对应的数据访问记录,确定至少一个访问方法的重要度;
覆盖率确定单元,用于根据所述至少一个访问方法的重要度和所述被测试对象的单元测试信息,确定所述被测试对象的测试覆盖率。
8.一种设备,其特征在于,所述设备包括处理器以及存储器:
所述存储器用于存储计算机程序;
所述处理器用于根据所述计算机程序执行权利要求1-6中任一项所述的方法。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质用于存储计算机程序,所述计算机程序用于执行权利要求1-6中任一项所述的方法。
10.一种计算机程序产品,其特征在于,所述计算机程序产品在终端设备上运行时,使得所述终端设备执行权利要求1-6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110796054.3A CN113448864B (zh) | 2021-07-14 | 2021-07-14 | 一种测试覆盖率确定方法及其相关设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110796054.3A CN113448864B (zh) | 2021-07-14 | 2021-07-14 | 一种测试覆盖率确定方法及其相关设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113448864A true CN113448864A (zh) | 2021-09-28 |
CN113448864B CN113448864B (zh) | 2024-08-06 |
Family
ID=77816257
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110796054.3A Active CN113448864B (zh) | 2021-07-14 | 2021-07-14 | 一种测试覆盖率确定方法及其相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113448864B (zh) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103023710A (zh) * | 2011-09-21 | 2013-04-03 | 阿里巴巴集团控股有限公司 | 一种安全测试系统和方法 |
CN108156132A (zh) * | 2017-11-20 | 2018-06-12 | 北京三快在线科技有限公司 | 访问行为数据处理方法、系统、设备及可读存储介质 |
CN112256553A (zh) * | 2019-07-22 | 2021-01-22 | 百度(中国)有限公司 | 一种应用软件测试方法、装置及电子设备 |
-
2021
- 2021-07-14 CN CN202110796054.3A patent/CN113448864B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103023710A (zh) * | 2011-09-21 | 2013-04-03 | 阿里巴巴集团控股有限公司 | 一种安全测试系统和方法 |
CN108156132A (zh) * | 2017-11-20 | 2018-06-12 | 北京三快在线科技有限公司 | 访问行为数据处理方法、系统、设备及可读存储介质 |
CN112256553A (zh) * | 2019-07-22 | 2021-01-22 | 百度(中国)有限公司 | 一种应用软件测试方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN113448864B (zh) | 2024-08-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109309596A (zh) | 一种压力测试方法、装置及服务器 | |
CN111506731B (zh) | 一种训练字段分类模型的方法、装置及设备 | |
CN110134611B (zh) | 内存泄漏分析方法、装置、终端和存储介质 | |
CN110570312A (zh) | 样本数据获取方法、装置、计算机设备和可读存储介质 | |
CN110334012B (zh) | 一种风险评估方法及装置 | |
CN111143209A (zh) | 分层压力测试方法、装置、电子设备及存储介质 | |
CN114595130A (zh) | 一种软件稳定性评估方法、装置、存储介质和设备 | |
CN114726581A (zh) | 一种异常检测方法、装置、电子设备及存储介质 | |
CN110765005B (zh) | 软件可靠性评估方法和装置 | |
CN113448864B (zh) | 一种测试覆盖率确定方法及其相关设备 | |
CN113312261A (zh) | 测试用例筛选方法、设备、存储介质及装置 | |
CN113051526A (zh) | 一种量化评估方法及装置 | |
CN115904883A (zh) | 一种rpa流程执行可视化异常监控方法、装置及介质 | |
CN115052037A (zh) | 客户端检测方法、装置、存储介质和设备 | |
CN112468452A (zh) | 流量检测方法及装置、电子设备、计算机可读存储介质 | |
CN114355175A (zh) | 芯片性能的测评方法及装置、存储介质、计算机设备 | |
CN110264333B (zh) | 一种风险规则确定方法和装置 | |
CN113486055A (zh) | 用于确定公共wifi类别的数据处理系统 | |
CN112954310A (zh) | 图像质量检测方法、装置、计算机设备以及可读存储介质 | |
CN113326203A (zh) | 一种信息推荐方法、设备及存储介质 | |
CN118212994B (zh) | 代谢组学数据处理方法、装置、设备及可读存储介质 | |
CN111062003A (zh) | 样本总体协方差判定方法、装置、设备及存储介质 | |
CN113128794A (zh) | 一种量化评估方法及装置 | |
CN112099838B (zh) | 确定版本差异的方法、装置及存储介质 | |
CN112035288B (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 |