CN108287785A - 测试例排序方法和设备 - Google Patents

测试例排序方法和设备 Download PDF

Info

Publication number
CN108287785A
CN108287785A CN201710014879.9A CN201710014879A CN108287785A CN 108287785 A CN108287785 A CN 108287785A CN 201710014879 A CN201710014879 A CN 201710014879A CN 108287785 A CN108287785 A CN 108287785A
Authority
CN
China
Prior art keywords
api
test case
score
source code
app
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
Application number
CN201710014879.9A
Other languages
English (en)
Other versions
CN108287785B (zh
Inventor
钟朝亮
张沈斌
黄琦珍
皮冰锋
孙俊
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to CN201710014879.9A priority Critical patent/CN108287785B/zh
Publication of CN108287785A publication Critical patent/CN108287785A/zh
Application granted granted Critical
Publication of CN108287785B publication Critical patent/CN108287785B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3668Software testing
    • G06F11/3672Test management
    • G06F11/3688Test management for test execution, e.g. scheduling of test suites

Abstract

本发明公开了一种测试例排序方法和设备。该测试例排序方法用于对基于API的APP的多个测试例进行优先级排序,该方法包括:针对所述多个测试例中的每个测试例,确定该测试例调用的API集合;根据API集合中的每个API的复杂度得分、API集合中的每个API的使用频率得分、该测试例的耦合得分、该测试例的API数量得分中的至少一个,计算该测试例的评价得分,其中,该测试例的耦合得分反映了该测试例调用的API之间的耦合紧密程度;以及根据所述多个测试例的评价得分,对所述多个测试例进行优先级排序。

Description

测试例排序方法和设备
技术领域
本发明一般地涉及信息处理技术领域。具体而言,本发明涉及一种能够对移动应用APP的测试例进行优先级排序的方法和设备。
背景技术
随着智能设备的普及,移动应用APP获得了极大的发展。然而,由于存在不同的移动平台,例如,安卓、iOS等,所以APP的开发者必须为每个App在每个平台上开发一个版本,这需要耗费很多资源和时间。为此,人们创建了一些跨平台的移动应用开发框架,例如Cordova,来实现只开发一次APP,APP便可在不同移动平台上运行的跨平台的App开发。
然而,这些跨平台的移动应用开发框架存在如下问题:为了确保能够在之前版本的框架上运行的App在新版本的框架上仍然能够正常运行,需要进行回归性的测试。传统的测试方法需要将为前一个版本的框架创建的测试例在新版本的框架上全部重新执行一遍,并检查版本升级是否破坏了之前能够正常运行的功能。显然,这样的测试需要非常多的资源和时间,在实践中往往是不可行的。
为了解决上述问题,可以对测试例进行优先级排序。传统的基于白盒的测试例优先级排序方法根据源代码的覆盖率,如行覆盖率、分支覆盖率、方法覆盖率等来进行排序。然而,传统的基于白盒的测试例优先级排序方法不能保证移动开发框架提供的API能够正确工作,因此不适用于移动应用开发框架。
因此,本发明旨在提出一种对基于API的APP的多个测试例进行优先级排序的方法和设备,其能够在保证移动开发框架提供的API能够正确工作的情况下合理地有效地对移动开发框架的测试例进行优先级排序。
发明内容
在下文中给出了关于本发明的简要概述,以便提供关于本发明的某些方面的基本理解。应当理解,这个概述并不是关于本发明的穷举性概述。它并不是意图确定本发明的关键或重要部分,也不是意图限定本发明的范围。其目的仅仅是以简化的形式给出某些概念,以此作为稍后论述的更详细描述的前序。
本发明的目的是提出一种能够合理地有效地对移动开发框架的测试例进行优先级排序的方法和设备。
为了实现上述目的,根据本发明的一个方面,提供了一种用于对基于API的APP的多个测试例进行优先级排序的方法。该方法包括:针对所述多个测试例中的每个测试例,确定该测试例调用的API集合;根据API集合中的每个API的复杂度得分、API集合中的每个API的使用频率得分、该测试例的耦合得分、该测试例的API数量得分中的至少一个,计算该测试例的评价得分,其中,该测试例的耦合得分反映了该测试例调用的API之间的耦合紧密程度;以及根据所述多个测试例的评价得分,对所述多个测试例进行优先级排序。
根据本发明的另一个方面,提供了一种用于对基于API的APP的多个测试例进行优先级排序的设备。该设备包括:集合确定装置,被配置为:针对所述多个测试例中的每个测试例,确定该测试例调用的API集合;得分计算装置,被配置为:根据API集合中的每个API的复杂度得分、API集合中的每个API的使用频率得分、该测试例的耦合得分、该测试例的API数量得分中的至少一个,计算该测试例的评价得分,其中,该测试例的耦合得分反映了该测试例调用的API之间的耦合紧密程度;以及优先级排序装置,被配置为:根据所述多个测试例的评价得分,对所述多个测试例进行优先级排序。
另外,根据本发明的另一方面,还提供了一种存储介质。所述存储介质包括机器可读的程序代码,当在信息处理设备上执行所述程序代码时,所述程序代码使得所述信息处理设备执行根据本发明的上述方法。
此外,根据本发明的再一方面,还提供了一种程序产品。所述程序产品包括机器可执行的指令,当在信息处理设备上执行所述指令时,所述指令使得所述信息处理设备执行根据本发明的上述方法。
附图说明
参照下面结合附图对本发明的实施例的说明,会更加容易地理解本发明的以上和其它目的、特点和优点。附图中的部件只是为了示出本发明的原理。在附图中,相同的或类似的技术特征或部件将采用相同或类似的附图标记来表示。附图中:
图1示出了根据本发明的实施例的优先级排序方法的流程图;
图2示出了示例性的API耦合图;
图3示出了根据本发明的实施例的优先级排序设备的结构方框图;
图4示出了可用于实施根据本发明的实施例的方法和设备的计算机的示意性框图。
具体实施方式
在下文中将结合附图对本发明的示范性实施例进行详细描述。为了清楚和简明起见,在说明书中并未描述实际实施方式的所有特征。然而,应该了解,在开发任何这种实际实施方式的过程中必须做出很多特定于实施方式的决定,以便实现开发人员的具体目标,例如,符合与系统及业务相关的那些限制条件,并且这些限制条件可能会随着实施方式的不同而有所改变。此外,还应该了解,虽然开发工作有可能是非常复杂和费时的,但对得益于本公开内容的本领域技术人员来说,这种开发工作仅仅是例行的任务。
在此,还需要说明的一点是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的装置结构和/或处理步骤,而省略了与本发明关系不大的其他细节。另外,还需要指出的是,在本发明的一个附图或一种实施方式中描述的元素和特征可以与一个或更多个其它附图或实施方式中示出的元素和特征相结合。
本发明的基本思想是综合考虑API复杂度、API使用频率以及API之间的关系、API的数量来对测试例进行优先级排序。
下面将参照图1描述根据本发明的实施例的用于对基于API的APP的多个测试例进行优先级排序的方法的流程。
图1示出了根据本发明的实施例的优先级排序方法的流程图。如图1所示,该优先级排序方法包括如下步骤:针对所述多个测试例中的每个测试例,确定该测试例调用的API集合(步骤S1);根据API集合中的每个API的复杂度得分、API集合中的每个API的使用频率得分、该测试例的耦合得分、该测试例的API数量得分中的至少一个,计算该测试例的评价得分,其中,该测试例的耦合得分反映了该测试例调用的API之间的耦合紧密程度(步骤S2);以及根据所述多个测试例的评价得分,对所述多个测试例进行优先级排序(步骤S3)。
在步骤S1中,针对所述多个测试例中的每个测试例,确定该测试例调用的API集合。
具体地,可以运行该测试例,以确定该测试例所调用的所有API构成的API集合。也可以分析该测试例的源代码和APP的源代码,以定位App的被测试例所触发的代码片段,并得到该代码片段中覆盖的对移动开发框架的API调用,以确定API集合。
在步骤S2中,根据API集合中的每个API的复杂度得分、API集合中的每个API的使用频率得分、该测试例的耦合得分、该测试例的API数量得分中的至少一个,计算该测试例的评价得分。
复杂的API相对于简单的API,更容易引入漏洞(bug)。因此,考量测试例所涉及的API的复杂度得分,来计算测试例的评价得分。
具体地,API的复杂度得分体现了该API在所有API中,在参数数目和/或调用所需的源代码量方面的分布,其根据API的参数数目和/或调用API所需的源代码量计算。其中,调用API所需的源代码量包括调用API所需的源代码的行数。
假设API具有的参数的个数为np、调用该API需要编写的源代码的行数为nl。
API的复杂度得分AC可通过下述公式(1)进行计算。
AC=w·normalized(np)+(1-w)·normalized(nl) (1)
其中,normalized()表示归一化函数,w为加权系数。
根据np和nl的不同的分布,可以采用不同的归一化函数。例如,如果np或nl服从标准正态分布,则可以采用Z-score(Z分数模型)来进行归一化,在下述代表归一化函数normalized()的公式(2)中,μ是所有样本的均值,σ是所有样本的标准差,x*为因变量,x为自变量。
x*=(x-μ)/σ (2)
如果np或nl服从均匀分布,则可以采用最小值-最大值归一化函数,在下述代表归一化函数normalized()的公式(3)中,min代表所有样本的最小值,max代表所有样本的最大值,x*为因变量,x为自变量。
x*=(x-min)/(max-min) (3)
API统计信息数据库中存储着每个API的参数数目、在所有App中调用每个API所需的源代码的行数、以及每个API在所有APP的源代码中被调用的次数。每个API的调用该API需要编写的源代码的行数nl等于所有App中调用该API所需的源代码的行数的平均值。
每当APP修改或更新时,APP调用的API的参数数目、调用API所需的源代码量、API在APP的源代码中被调用的次数也被更新。
API的使用频率得分根据该API在所有APP的源代码中被调用的次数和所有API在所有APP的源代码中被调用的总数计算。经常使用的API比不经常使用的API更容易遭遇bug。
如上所述,API统计信息数据库中存储有每个API在所有APP的源代码中被调用的次数。每当APP修改或更新时,该信息也会更新。
API的使用频率得分AF例如可以通过下面的公式(4)计算。
AF=(invoke_times(API))/(invoke_times(all APIs)) (4)
其中,invoke_times()表示从API统计信息数据库中检索得到的调用次数,API表示要计算其使用频率得分的API,allAPIs表示所有API。
应注意,API的复杂度得分和API的使用频率得分都是针对API的得分,而下面介绍的测试例的耦合得分和测试例的数量得分都是针对测试例的得分。由于API的复杂度得分和使用频率得分是针对测试例调用的API集合中的API计算的,所以复杂度得分和使用频率得分最终也体现了测试例的信息。
测试例的耦合得分反映了该测试例调用的API之间的耦合紧密程度。测试例的耦合得分可以根据API集合中的API之间的输入输出关系、API集合中的API的总数计算。
如果在该测试例所调用的App的源代码中,两个API存在直接的输入输出关系,则这两个API存在着耦合关系。图2示出了示例性的API耦合图。在图2中,每个节点是一个API调用,如果两个API存在着耦合关系,则这两个节点之间存在边。针对下面的API调用集合,图2表明了API之间的耦合关系。
a=API_invoke1();
b=API_invoke2(a);
c=API_invoke3();
d=API_invoke4(b);
其中,a、b、c、d表示API调用的输入输出。API_invoke1、API_invoke2、API_invoke3、API_invoke4表示API调用。
测试例的耦合得分ACD可通过下面的公式(5)计算。
在公式(5)中,分子number_of_edges是耦合图中边的个数,N是测试例所调用的API的总数。例如,假设N等于4,且图2中的边的个数为2,则根据公式(5)计算得到的ACD等于1/3。
ACD=(number_of_edges)/(N(N-1)/2) (5)
测试例的API数量得分根据API集合中的API的总数、所有测试例调用的API的总数计算。
具体地,测试例的API数量得分等于API集合中的API的总数与所有测试例调用的API的总数之商。
测试例的评价得分API_coverage_score等于API集合中的每个API的复杂度得分ACi、API集合中的每个API的使用频率得分AFi、该测试例的耦合得分ACD、该测试例的API数量得分n/N的加权求和,如下面的公式(6)所示。
其中,N是所有测试例调用的API的总数,n是API集合中的API的总数,w1、w2、w3是加权系数。
在步骤S3中,根据所述多个测试例的评价得分,对所述多个测试例进行优先级排序。
测试例的评价得分越高,排名越靠前。排名靠前的测试例会优先进行测试。也可将排名最前的预定数目的测试例选用,而丢弃其它测试例。
下面,将参照图3描述根据本发明的实施例的优先级排序设备。
图3示出了根据本发明的实施例的优先级排序设备的结构方框图。如图3所示,根据本发明的优先级排序设备300包括:集合确定装置31,被配置为:针对所述多个测试例中的每个测试例,确定该测试例调用的API集合;得分计算装置32,被配置为:根据API集合中的每个API的复杂度得分、API集合中的每个API的使用频率得分、该测试例的耦合得分、该测试例的API数量得分中的至少一个,计算该测试例的评价得分,其中,该测试例的耦合得分反映了该测试例调用的API之间的耦合紧密程度;以及优先级排序装置33,被配置为:根据所述多个测试例的评价得分,对所述多个测试例进行优先级排序。
在一个实施例中,集合确定装置31被进一步配置为:运行该测试例,以确定API集合。
在一个实施例中,集合确定装置31被进一步配置为:分析该测试例和APP的源代码,以确定API集合。
在一个实施例中,得分计算装置32被进一步配置为:根据API的参数数目和/或调用API所需的源代码量计算API的复杂度得分。
在一个实施例中,调用API所需的源代码量包括调用API所需的源代码的行数。
在一个实施例中,API的复杂度得分体现了该API在所有API中,在参数数目和/或调用所需的源代码量方面的分布。
在一个实施例中,得分计算装置32被进一步配置为根据该API在所有APP的源代码中被调用的次数和所有API在所有APP的源代码中被调用的总数计算API的使用频率得分。
在一个实施例中,得分计算装置32被进一步配置为根据API集合中的API之间的输入输出关系、API集合中的API的总数计算该测试例的耦合得分。
在一个实施例中,得分计算装置32被进一步配置为根据API集合中的API的总数、所有测试例调用的API的总数计算该测试例的API数量得分。
在一个实施例中,当APP修改或更新时,APP调用的API的参数数目、调用API所需的源代码量、API在APP的源代码中被调用的次数也被更新。
由于在根据本发明的优先级排序设备300中所包括的各个装置和单元中的处理分别与上面描述的优先级排序方法中所包括的各个步骤中的处理类似,因此为了简洁起见,在此省略这些装置和单元的详细描述。
此外,这里尚需指出的是,上述设备中各个组成装置、单元可以通过软件、固件、硬件或其组合的方式进行配置。配置可使用的具体手段或方式为本领域技术人员所熟知,在此不再赘述。在通过软件或固件实现的情况下,从存储介质或网络向具有专用硬件结构的计算机(例如图4所示的通用计算机400)安装构成该软件的程序,该计算机在安装有各种程序时,能够执行各种功能等。
图4示出了可用于实施根据本发明的实施例的方法和设备的计算机的示意性框图。
在图4中,中央处理单元(CPU)401根据只读存储器(ROM)402中存储的程序或从存储部分408加载到随机存取存储器(RAM)403的程序执行各种处理。在RAM 403中,还根据需要存储当CPU 401执行各种处理等等时所需的数据。CPU 401、ROM 402和RAM 403经由总线404彼此连接。输入/输出接口405也连接到总线404。
下述部件连接到输入/输出接口405:输入部分406(包括键盘、鼠标等等)、输出部分407(包括显示器,比如阴极射线管(CRT)、液晶显示器(LCD)等,和扬声器等)、存储部分408(包括硬盘等)、通信部分409(包括网络接口卡比如LAN卡、调制解调器等)。通信部分409经由网络比如因特网执行通信处理。根据需要,驱动器410也可连接到输入/输出接口405。可拆卸介质411比如磁盘、光盘、磁光盘、半导体存储器等等可以根据需要被安装在驱动器410上,使得从中读出的计算机程序根据需要被安装到存储部分408中。
在通过软件实现上述系列处理的情况下,从网络比如因特网或存储介质比如可拆卸介质411安装构成软件的程序。
本领域的技术人员应当理解,这种存储介质不局限于图4所示的其中存储有程序、与设备相分离地分发以向用户提供程序的可拆卸介质411。可拆卸介质411的例子包含磁盘(包含软盘(注册商标))、光盘(包含光盘只读存储器(CD-ROM)和数字通用盘(DVD))、磁光盘(包含迷你盘(MD)(注册商标))和半导体存储器。或者,存储介质可以是ROM 402、存储部分408中包含的硬盘等等,其中存有程序,并且与包含它们的设备一起被分发给用户。
本发明还提出一种存储有机器可读取的指令代码的程序产品。所述指令代码由机器读取并执行时,可执行上述根据本发明的实施例的方法。
相应地,用于承载上述存储有机器可读取的指令代码的程序产品的存储介质也包括在本发明的公开中。所述存储介质包括但不限于软盘、光盘、磁光盘、存储卡、存储棒等等。
在上面对本发明具体实施例的描述中,针对一种实施方式描述和/或示出的特征可以以相同或类似的方式在一个或更多个其它实施方式中使用,与其它实施方式中的特征相组合,或替代其它实施方式中的特征。
应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。
此外,本发明的方法不限于按照说明书中描述的时间顺序来执行,也可以按照其他的时间顺序地、并行地或独立地执行。因此,本说明书中描述的方法的执行顺序不对本发明的技术范围构成限制。
尽管上面已经通过对本发明的具体实施例的描述对本发明进行了披露,但是,应该理解,上述的所有实施例和示例均是示例性的,而非限制性的。本领域的技术人员可在所附权利要求的精神和范围内设计对本发明的各种修改、改进或者等同物。这些修改、改进或者等同物也应当被认为包括在本发明的保护范围内。
附记
1.一种用于对基于API的APP的多个测试例进行优先级排序的方法,包括:
针对所述多个测试例中的每个测试例,
确定该测试例调用的API集合;
根据API集合中的每个API的复杂度得分、API集合中的每个API的使用频率得分、该测试例的耦合得分、该测试例的API数量得分中的至少一个,计算该测试例的评价得分,其中,该测试例的耦合得分反映了该测试例调用的API之间的耦合紧密程度;以及
根据所述多个测试例的评价得分,对所述多个测试例进行优先级排序。
2.如附记1所述的方法,其中,确定该测试例调用的API集合包括:
运行该测试例,以确定API集合。
3.如附记1所述的方法,其中,确定该测试例调用的API集合包括:
分析该测试例和APP的源代码,以确定API集合。
4.如附记1所述的方法,其中,API的复杂度得分根据API的参数数目和/或调用API所需的源代码量计算。
5.如附记4所述的方法,其中,调用API所需的源代码量包括调用API所需的源代码的行数。
6.如附记4所述的方法,其中,API的复杂度得分体现了该API在所有API中,在参数数目和/或调用所需的源代码量方面的分布。
7.如附记1所述的方法,其中,API的使用频率得分根据该API在所有APP的源代码中被调用的次数和所有API在所有APP的源代码中被调用的总数计算。
8.如附记1所述的方法,其中,该测试例的耦合得分根据API集合中的API之间的输入输出关系、API集合中的API的总数计算。
9.如附记1所述的方法,其中,该测试例的API数量得分根据API集合中的API的总数、所有测试例调用的API的总数计算。
10.如附记1所述的方法,其中,当APP修改或更新时,APP调用的API的参数数目、调用API所需的源代码量、API在APP的源代码中被调用的次数也被更新。
11.一种用于对基于API的APP的多个测试例进行优先级排序的设备,包括:
集合确定装置,被配置为:针对所述多个测试例中的每个测试例,确定该测试例调用的API集合;
得分计算装置,被配置为:根据API集合中的每个API的复杂度得分、API集合中的每个API的使用频率得分、该测试例的耦合得分、该测试例的API数量得分中的至少一个,计算该测试例的评价得分,其中,该测试例的耦合得分反映了该测试例调用的API之间的耦合紧密程度;以及
优先级排序装置,被配置为:根据所述多个测试例的评价得分,对所述多个测试例进行优先级排序。
12.如附记11所述的设备,其中,集合确定装置被进一步配置为:运行该测试例,以确定API集合。
13.如附记11所述的设备,其中,集合确定装置被进一步配置为:分析该测试例和APP的源代码,以确定API集合。
14.如附记11所述的设备,其中,得分计算装置被进一步配置为:根据API的参数数目和/或调用API所需的源代码量计算API的复杂度得分。
15.如附记14所述的设备,其中,调用API所需的源代码量包括调用API所需的源代码的行数。
16.如附记14所述的设备,其中,API的复杂度得分体现了该API在所有API中,在参数数目和/或调用所需的源代码量方面的分布。
17.如附记11所述的设备,其中,得分计算装置被进一步配置为:根据该API在所有APP的源代码中被调用的次数和所有API在所有APP的源代码中被调用的总数计算API的使用频率得分。
18.如附记11所述的设备,其中,得分计算装置被进一步配置为:根据API集合中的API之间的输入输出关系、API集合中的API的总数计算该测试例的耦合得分。
19.如附记11所述的设备,其中,得分计算装置被进一步配置为:根据API集合中的API的总数、所有测试例调用的API的总数计算该测试例的API数量得分。
20.如附记11所述的设备,其中,当APP修改或更新时,APP调用的API的参数数目、调用API所需的源代码量、API在APP的源代码中被调用的次数也被更新。

Claims (10)

1.一种用于对基于应用程序接口API的应用APP的多个测试例进行优先级排序的方法,包括:
针对所述多个测试例中的每个测试例,
确定该测试例调用的API集合;
根据API集合中的每个API的复杂度得分、API集合中的每个API的使用频率得分、该测试例的耦合得分、该测试例的API数量得分中的至少一个,计算该测试例的评价得分,其中,该测试例的耦合得分反映了该测试例调用的API之间的耦合紧密程度;以及
根据所述多个测试例的评价得分,对所述多个测试例进行优先级排序。
2.如权利要求1所述的方法,其中,确定该测试例调用的API集合包括:
运行该测试例或分析该测试例和APP的源代码,以确定API集合。
3.如权利要求1所述的方法,其中,API的复杂度得分根据API的参数数目和/或调用API所需的源代码量计算。
4.如权利要求3所述的方法,其中,调用API所需的源代码量包括调用API所需的源代码的行数。
5.如权利要求3所述的方法,其中,API的复杂度得分体现了该API在所有API中,在参数数目和/或调用所需的源代码量方面的分布。
6.如权利要求1所述的方法,其中,API的使用频率得分根据该API在所有APP的源代码中被调用的次数和所有API在所有APP的源代码中被调用的总数计算。
7.如权利要求1所述的方法,其中,该测试例的耦合得分根据API集合中的API之间的输入输出关系、API集合中的API的总数计算。
8.如权利要求1所述的方法,其中,该测试例的API数量得分根据API集合中的API的总数、所有测试例调用的API的总数计算。
9.如权利要求1所述的方法,其中,当APP修改或更新时,APP调用的API的参数数目、调用API所需的源代码量、API在APP的源代码中被调用的次数也被更新。
10.一种用于对基于API的APP的多个测试例进行优先级排序的设备,包括:
集合确定装置,被配置为:针对所述多个测试例中的每个测试例,确定该测试例调用的API集合;
得分计算装置,被配置为:根据API集合中的每个API的复杂度得分、API集合中的每个API的使用频率得分、该测试例的耦合得分、该测试例的API数量得分中的至少一个,计算该测试例的评价得分,其中,该测试例的耦合得分反映了该测试例调用的API之间的耦合紧密程度;以及
优先级排序装置,被配置为:根据所述多个测试例的评价得分,对所述多个测试例进行优先级排序。
CN201710014879.9A 2017-01-09 2017-01-09 测试例排序方法和设备 Active CN108287785B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710014879.9A CN108287785B (zh) 2017-01-09 2017-01-09 测试例排序方法和设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710014879.9A CN108287785B (zh) 2017-01-09 2017-01-09 测试例排序方法和设备

Publications (2)

Publication Number Publication Date
CN108287785A true CN108287785A (zh) 2018-07-17
CN108287785B CN108287785B (zh) 2021-06-22

Family

ID=62819550

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710014879.9A Active CN108287785B (zh) 2017-01-09 2017-01-09 测试例排序方法和设备

Country Status (1)

Country Link
CN (1) CN108287785B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111008148A (zh) * 2019-12-20 2020-04-14 广州品唯软件有限公司 代码的测试方法、装置及计算机可读存储介质

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060074881A1 (en) * 2004-10-02 2006-04-06 Adventnet, Inc. Structure independent searching in disparate databases
CN101908020A (zh) * 2010-08-27 2010-12-08 南京大学 一种基于分类挖掘和版本变更的测试用例优先化方法
CN102004641A (zh) * 2010-11-23 2011-04-06 武汉大学 一种基于拓扑势的软件需求用例优先级排序方法
CN102253889A (zh) * 2011-08-07 2011-11-23 南京大学 一种回归测试中基于分布的测试用例优先级划分方法
CN102289408A (zh) * 2011-09-08 2011-12-21 武汉大学 一种基于错误传播网络的回归测试用例排序方法
CN102880545A (zh) * 2012-08-30 2013-01-16 中国人民解放军63928部队 一种测试用例优先级排序动态调整方法
CN103678121A (zh) * 2013-11-18 2014-03-26 杭州电子科技大学 一种嵌入式二进制软件测试用例优先排序方法
CN103902449A (zh) * 2012-12-28 2014-07-02 百度在线网络技术(北京)有限公司 一种用于生成搜索引擎相关性排序测试用例的方法与设备
CN104536896A (zh) * 2015-01-12 2015-04-22 牟永敏 面向函数调用路径的回归测试用例选择与排序方法及系统
US9021440B1 (en) * 2014-08-11 2015-04-28 Pmc-Sierra Us, Inc. System and method for automated test script generation
CN105446885A (zh) * 2015-12-28 2016-03-30 西南大学 一种基于需求的回归测试用例优先级排序技术
CN105528289A (zh) * 2015-12-04 2016-04-27 中国矿业大学 一种基于分支覆盖与相似性的回归测试用例优先排序方法

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060074881A1 (en) * 2004-10-02 2006-04-06 Adventnet, Inc. Structure independent searching in disparate databases
CN101908020A (zh) * 2010-08-27 2010-12-08 南京大学 一种基于分类挖掘和版本变更的测试用例优先化方法
CN102004641A (zh) * 2010-11-23 2011-04-06 武汉大学 一种基于拓扑势的软件需求用例优先级排序方法
CN102253889A (zh) * 2011-08-07 2011-11-23 南京大学 一种回归测试中基于分布的测试用例优先级划分方法
CN102289408A (zh) * 2011-09-08 2011-12-21 武汉大学 一种基于错误传播网络的回归测试用例排序方法
CN102880545A (zh) * 2012-08-30 2013-01-16 中国人民解放军63928部队 一种测试用例优先级排序动态调整方法
CN103902449A (zh) * 2012-12-28 2014-07-02 百度在线网络技术(北京)有限公司 一种用于生成搜索引擎相关性排序测试用例的方法与设备
CN103678121A (zh) * 2013-11-18 2014-03-26 杭州电子科技大学 一种嵌入式二进制软件测试用例优先排序方法
US9021440B1 (en) * 2014-08-11 2015-04-28 Pmc-Sierra Us, Inc. System and method for automated test script generation
CN104536896A (zh) * 2015-01-12 2015-04-22 牟永敏 面向函数调用路径的回归测试用例选择与排序方法及系统
CN105528289A (zh) * 2015-12-04 2016-04-27 中国矿业大学 一种基于分支覆盖与相似性的回归测试用例优先排序方法
CN105446885A (zh) * 2015-12-28 2016-03-30 西南大学 一种基于需求的回归测试用例优先级排序技术

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
郑锦勤: "基于函数调用路径的回归测试用例选择排序方法研究", 《计算机应用研究》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111008148A (zh) * 2019-12-20 2020-04-14 广州品唯软件有限公司 代码的测试方法、装置及计算机可读存储介质
CN111008148B (zh) * 2019-12-20 2024-02-02 广州品唯软件有限公司 代码的测试方法、装置及计算机可读存储介质

Also Published As

Publication number Publication date
CN108287785B (zh) 2021-06-22

Similar Documents

Publication Publication Date Title
US7644368B2 (en) System and method for regression tests of user interfaces
US8356056B2 (en) Functional extensions for business objects
US9390375B2 (en) Reuse of on-demand enterprise system customization knowledge utilizing collective experience
US8627296B1 (en) Unified unit and integration test with automatic mock creation
US9037595B2 (en) Creating graphical models representing control flow of a program manipulating data resources
US7398474B2 (en) Method and system for a digital device menu editor
US20080209425A1 (en) Device Comprising a Communications Stick With A Scheduler
EP1603033A2 (en) Method and apparatus for generating forms using form types
US20070083419A1 (en) Assessing information technology components
US20070083504A1 (en) Selecting information technology components for target market offerings
US20040225972A1 (en) Automation of the development, testing, and release of a flow framework and methodology to design integrated circuits
US6769113B1 (en) Enterprise process models and enterprise application for information technologies
US20070283352A1 (en) Sub-task mechanism for development of task-based user interfaces
US10380526B2 (en) System and method for providing a process player for use with a business process design environment
US7930677B2 (en) Method, system and computer program for tracking software development
Antoniol et al. Object-oriented function points: An empirical validation
CN108153658A (zh) 优先级模型训练方法及确定测试用例优先级的方法和装置
CN112270376A (zh) 模型训练方法、装置、电子设备、存储介质和开发系统
US8448194B2 (en) Value container propagation in development tools, business process management, and business rules management solutions
US8375365B2 (en) Customization verification
Kapova et al. State dependence in performance evaluation of component-based software systems
CN108287785A (zh) 测试例排序方法和设备
Mainkar Expert Android Programming: Master skills to build enterprise grade Android applications
US20090049378A1 (en) Method and computer program for associating element diagrams with applications
CN112148274A (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