CN103530223B - 一种自动生成单元测试用例的方法及装置 - Google Patents
一种自动生成单元测试用例的方法及装置 Download PDFInfo
- Publication number
- CN103530223B CN103530223B CN201210235768.8A CN201210235768A CN103530223B CN 103530223 B CN103530223 B CN 103530223B CN 201210235768 A CN201210235768 A CN 201210235768A CN 103530223 B CN103530223 B CN 103530223B
- Authority
- CN
- China
- Prior art keywords
- case
- test
- group
- test data
- code
- 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
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种自动生成单元测试用例的方法及装置,其中自动生成单元测试用例的方法包括:A.对待测代码进行语法分析,生成所述待测代码的抽象语法树;B.根据所述抽象语法树确定所述待测代码的特征信息,并根据所述特征信息确定一组或多组测试数据;C.利用预置的测试模板中的标签对所述一组或多组测试数据进行解析,以生成一个或多个单元测试用例。通过上述方式,本发明能够极大地提高测试效率。
Description
【技术领域】
本发明涉及测试技术,特别涉及一种自动生成单元测试用例的方法及装置。
【背景技术】
单元测试在保证软件质量方面发挥着重要的作用,是软件工程中不可或缺的一步。根据统计数据表明,开发单元测试用例的时间占软件开发项目时间的30%左右,可见,提高开发单元测试用例的效率,对于加快测试进度,进而节约项目开发时间的意义非常重大。
在现有技术中,开发单元测试用例主要以人工的方式进行,如通过测试人员对待测代码进行人工分析,根据分析情况手工编写测试用例。这主要存在几个问题:首先,需要比较专业的测试人员,并且需要测试人员对待测代码比较熟悉;其次,由于测试用例主要通过人工编写,所以测试用例的质量较低;最后,人工编写测试用例,时间长,效率低。
【发明内容】
本发明所要解决的技术问题是提供一种自动生成单元测试用例的方法及装置,以提高单元测试用例的开发速度,从而缩短软件测试花费的时间,提高软件测试的效率。
本发明为解决技术问题而采用的技术方案是提供一种自动生成单元测试用例的方法,包括:A.对待测代码进行语法分析,生成所述待测代码的抽象语法树;B.根据所述抽象语法树确定所述待测代码的特征信息,并根据所述特征信息确定一组或多组测试数据;C.利用预置的测试模板中的标签对所述一组或多组测试数据进行解析,以生成一个或多个单元测试用例。
根据本发明之一优选实施例,所述特征信息包括:所述待测代码中的类名、方法名、方法返回值、方法中的判定条件及方法抛出异常类型。
根据本发明之一优选实施例,根据所述特征信息确定一组或多组测试数据的步骤具体包括:根据方法中的判断条件确定该方法的一组或多组正常参数取值,并将该方法的各组正常参数取值分别与该方法所属类名、该方法名及该方法返回值组合,得到正常用例的测试数据;根据方法抛出异常类型确定该方法的一组或多组异常参数取值,并将该方法的各组异常参数取值分别与该方法所属类名、该方法名及该方法抛出异常类型组合,得到异常用例的测试数据。
根据本发明之一优选实施例,所述标签包括:逻辑标签及普通标签,其中所述逻辑标签用于判断各组测试数据属于正常用例还是异常用例,并对各组正常用例的测试数据和各组异常用例的测试数据进行迭代,以生成与测试数据组数一致数量的单元测试用例,所述普通标签用于在每次迭代中,对各组测试数据中的分量进行提取。
根据本发明之一优选实施例,所述逻辑标签进一步还用于判断各组正常用例的测试数据中的方法返回值分量是否为空,如果是,所述步骤C在生成该组测试数据对应的单元测试用例中给出提示信息。
本发明还提供了一种自动生成单元测试用例的装置,包括:分析单元,用于对待测代码进行语法分析,生成所述待测代码的抽象语法树;数据准备单元,用于根据所述抽象语法树确定所述待测代码的特征信息,并根据所述特征信息确定一组或多组测试数据;用例生成单元,用于利用预置的测试模板中的标签对所述一组或多组测试数据进行解析,以生成一个或多个测试用例。
根据本发明之一优选实施例,所述特征信息包括:所述待测代码中的类名、方法名、方法返回值、方法中的判定条件及方法抛出异常类型。
根据本发明之一优选实施例,所述数据准备单元根据所述特征信息确定一组或多组测试数据的方式具体包括:根据方法中的判断条件确定该方法的一组或多组正常参数取值,并将该方法的各组正常参数取值分别与该方法所属类名、该方法名及该方法返回值组合,得到正常用例的测试数据;根据方法抛出异常类型确定该方法的一组或多组异常参数取值,并将该方法的各组异常参数取值分别与该方法所属类名、该方法名及该方法抛出异常类型组合,得到异常用例的测试数据。
根据本发明之一优选实施例,所述标签包括:逻辑标签及普通标签,其中所述逻辑标签用于判断各组测试数据属于正常用例还是异常用例,并对各组正常用例的测试数据和各组异常用例的测试数据进行迭代,以生成与测试数据组数一致数量的单元测试用例,所述普通标签用于在每次迭代中,对各组测试数据中的分量进行提取。
根据本发明之一优选实施例,所述逻辑标签进一步还用于判断各组正常用例的测试数据中的方法返回值分量是否为空,如果是,所述用例生成单元在生成该组测试数据对应的单元测试用例中给出提示信息。
由以上技术方案可以看出,通过对待测代码进行分析,得到待测代码的特征信息,根据特征信息提取出测试数据,并采用模板技术,利用预置的测试模板对测试数据进行解析,可以自动生成单元测试用例,与现有技术的人工开发单元测试用例的方式相比,本发明极大地提高了单元测试用例的开发速度,从而提高了测试效率。
【附图说明】
图1为本发明中自动生成单元测试用例的方法的实施例的流程示意图;
图2为本发明中自动生成单元测试用例的装置的实施例的结构示意框图。
【具体实施方式】
为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
请参考图1,图1为本发明中自动生成单元测试用例的方法的实施例的流程示意图。如图1所示,该方法包括:
步骤S101:对待测代码进行语法分析,生成待测代码的抽象语法树。
步骤S102:根据抽象语法树确定待测代码的特征信息,并根据特征信息确定一组或多组测试数据。本发明中的多组,指的是两组或两组以上。
步骤S103:利用预置的测试模板中的标签对上述一组或多组测试数据进行解析,以生成一个或多个单元测试用例。本发明中的多个,指的是两个或两个以上。
下面对上述步骤进行详细说明。
步骤S101中,对待测代码进行语法分析,可以通过现有的语法分析工具进行,以Java语言为例,如Javacc这样的语法分析工具,就可以用来对待测代码进行语法分析,并输出待测代码的抽象语法树。抽象语法树包含所有从待测代码得到的相关信息,能够完整体现待测代码的语法结构。
步骤S102中,确定待测代码的特征信息,其中特征信息包括:待测代码中的类名、方法名、方法返回类型、方法中的判定条件及方法抛出异常类型。以下面的代码片段为例:
从上述代码片段的抽象语法树中可以确定出这段待测代码的特征信息有:类名——Example、方法名——toTest、方法返回类型——double、方法中的判定条件——a>0及b>0、方法抛出异常类型——ArithmeticException。
步骤S102中根据特征信息确定一组或多组测试数据,具体地,包括:
根据方法中的判断条件确定该方法的一组或多组正常参数取值,并将该方法的各组正常参数取值分别与该方法所述类名、该方法名及该方法返回值组合,得到正常用例的测试数据;根据方法抛出异常类型确定该方法的一组或多组异常参数取值,并将该方法的各组异常参数取值分别与该方法所属类名、该方法名及该方法抛出异常类型组合,得到异常用例的测试数据。
单元测试中,根据对测试的代码块的覆盖范围,可以将单元测试分为语句覆盖、条件覆盖、判定条件覆盖、条件组合覆盖等。下面以条件覆盖为例说明上述确定测试数据的过程,对于其他类型的覆盖,可以采用类似的方法确定测试数据,在此不再赘述。
以前面的代码片段为例,方法“toTest”中的判断条件包括“a>0”及“b>0”,若要实现条件覆盖,则在方法“toTest”中,需要保证a>0、b>0被执行一次,以及a<0、b<0被执行一次,因此对方法“toTest”可以提取出两组用于生成正常用例的正常参数取值(a=1,b=1)和(a=-1,b=-1),将这两组正常参数取值分别与类名“Example”、方法名“toTest”、方法返回类型“double”进行组合,得到两组正常用例的测试数据,分别表示为{(a=1,b=1)、Example、toTest、double}和{(a=-1,b=-1)、Example、toTest、double},其中参数取值、类名、方法名、方法返回类型分别构成了一组正常用例的测试数据中的各个分量。可以理解,上述正常用例的测试数据的结构仅是为了帮助理解的一种示意性结构,不应该将此作为对本发明的限制。
此外,对于存在异常情况的待测代码,步骤S102中还将根据抛出异常类型确定异常参数取值,仍以前面的代码片段为例,由于抛出的是算术异常(ArithmeticException),则对方法“toTest”而言,取参数(a=1,b=100)时,在执行到语句“result=a/b”时,会抛出算术异常。因此可以得到一组异常参数取值(a=1,b=100),将该组参数取值与类名“Example”、方法名“toTest”、异常类型“ArithmeticException”组合,得到一组异常用例的测试数据,表示为{(a=1,b=100)、Example、toTest、ArithmeticException},其中参数取值、类名、方法名、异常类型分别构成了异常用例的测试数据中的各个分量。与前面描述的一样,上述异常用例的测试数据仅为一种示意性结构,不应将此作为对本发明的限制。
步骤S103中,测试用例的共同特征已经在预置的测试模板中进行了描述,此外,测试模板中的标签中包含逻辑标签及普通标签,其中逻辑标签用于判断各组测试数据属于正常用例还是异常用例,并对各组正常用例的测试数据和各组异常用例的测试数据进行迭代,以生成与测试数据组数一致数量的单元测试用例,所述普通标签用于在每次迭代中,对各组测试数据中的分量进行提取。利用测试模板中的标签对测试数据进行解析,就可以生成与测试数据组数一致数量的单元测试用例。
为了更好地说明上述过程,下面提供了一种测试模板的示意代码:
上述代码中,以#开始的标签就是逻辑标签,以$开始的标签就是普通标签。在上述测试模板中,由“<#if exception?exists>”逻辑标签实现了对正常用例的测试数据还是异常用例的测试数据的判断,由“<#list methods as method>、<#list exception asexceptions>”两个逻辑标签分别实现了对各组正常用例的测试数据和各组异常用例的测试数据的迭代,在迭代过程中,各个普通标签会对该标签指示的测试数据中的分量进行提取。例如上述测试模板中,${metadata.testName}表示提取测试数据中的类名,并由提取的测试数据中的类名形成测试用例的类名,${metadata.className}表示提取测试数据中的类名,${method.name}表示提取测试数据中的方法名,${method.arguments}表示提取测试数据中的参数取值,${method.expected}表示提取测试数据中的方法返回类型,并在该方法返回类型为基本数据类型(如整型、浮点型等)时,根据测试数据中的参数取值确定方法返回值,${exception.name}表示提取测试数据中的异常类型。
从上述测试模板中的下面这段代码:
可以看出,逻辑标签进一步还用于判断各组正常用例的测试数据中的方法返回类型分量是否为空(<#if expected?exists>标签表示的含义),如果是,则步骤S103在生成该组测试数据对应的单元测试用例中给出提示信息(//TODO:must supply assert.)。
上述方法返回类型分量为空,指的是测试数据中代表方法返回类型的分量为void类型,对待测代码而言,一个方法的返回值为void类型,说明该方法实现的主要是程序的业务逻辑,由于业务逻辑可能存在的问题需要人工给予特别的关注,因此,通过本发明的方法自动生成的测试用例,可以对业务逻辑上需要重点关注的用例给出提示,以方便测试人员进一步地完善自动生成的测试用例,与现有的人工生成测试用例的方法相比,本发明的方法能够大大减少测试人员的工作量,提高生成单元测试用例的效率以及提高单元测试用例的质量。
利用上述测试模板中的标签对步骤S102提取的两组正常用例的测试数据以及一组异常用例的测试数据进行解析,可以得到下面3个单元测试用例:
其中,用例1和用例2为正常测试用例,用例3为异常测试用例。利用测试模板中的标签对测试数据进行解析,可以采用模板工具实现,如使用Freemaker、Velocity等现有的模板工具,在此不再详述。
上述说明中所举的待测代码中方法的返回类型(double)属于基本数据类型,因此本发明在解析中,遇到${method.expected}标签,会利用测试数据中的参数取值进一步确定方法返回值,例如在上述用例1中,返回值result=101/99≈1,在用例2中,返回值result=100/100=1。但是如果待测代码中的方法返回值类型为void,即方法返回值为空,则在生成的单元测试用例中会给出提示信息。例如下面这段待测代码:
从上面可以看出,本发明的方法,可以在大量自动生成的测试用例中根据具体情况,在需要时给出提示信息,以帮助测试人员关注程序的业务逻辑中是否存在问题,而不需要测试人员对全部待测代码进行人工分析,能够有效提高测试的效率。
请参考图2,图2为本发明中自动用例生成装置的实施例的结构示意框图。如图2所示,自动生成单元测试用例的装置包括:分析单元201、数据准备单元202及用例生成单元203。
其中分析单元201,用于对待测代码进行语法分析,生成所述待测代码的抽象语法树。数据准备单元202,用于根据所述抽象语法树确定所述待测代码的特征信息,并根据所述特征信息确定一组或多组测试数据。用例生成单元203,用于利用预置的测试模板中的标签对所述一组或多组测试数据进行解析,以生成一个或多个单元测试用例。
其中分析单元201对待测代码进行语法分析,可以通过现有的语法分析工具进行,以Java语言为例,如Javacc这样的语法分析工具,就可以用来对待测代码进行语法分析,并输出待测代码的抽象语法树。抽象语法树包含所有从待测代码得到的相关信息,能够完整体现待测代码的语法结构。
数据准备单元202确定的待测代码的特征信息包括待测代码中的类名、方法名、方法返回类型、方法中的判断条件及方法抛出异常类型。
以下面的代码片段为例:
从上述代码片段的抽象语法树中数据准备单元202可以确定出这段待测代码的特征信息有:类名——Example、方法名——toTest、方法返回类型——double、方法中的判定条件——a>0及b>0、方法抛出异常类型——ArithmeticException。
并且,数据准备单元202根据特征信息确定一组或多组测试数据的方式具体包括:
根据方法中的判断条件确定该方法的一组或多组正常参数取值,并将该方法的各组正常参数取值分别与该方法所属类名、该方法名及该方法返回类型组合,得到正常用例的测试数据;根据方法抛出异常类型确定该方法的一组或多组异常参数取值,并将该方法的各组异常参数取值分别与该方法所属类名、该方法名及该方法抛出异常类型组合,得到异常用例的测试数据。
以前面的代码片段为例,方法“toTest”中的判断条件包括“a>0”及“b>0”,若要实现条件覆盖,则在方法“toTest”中,需要保证a>0、b>0被执行一次,以及a<0、b<0被执行一次,因此数据准备单元202对方法“toTest”可以提取出两组用于生成正常用例的正常参数取值(a=1,b=1)和(a=-1,b=-1),将这两组正常参数取值分别与类名“Example”、方法名“toTest”、方法返回类型“double”进行组合,得到两组正常用例的测试数据,分别表示为{(a=1,b=1)、Example、toTest、double}和{(a=-1,b=-1)、Example、toTest、double},其中参数取值、类名、方法名、方法返回类型分别构成了一组正常用例的测试数据中的各个分量。可以理解,上述正常用例的测试数据的结构仅是为了帮助理解的一种示意性结构,不应该将此作为对本发明的限制。
此外,对于存在异常情况的待测代码,数据准备单元202还将根据抛出异常类型确定异常参数取值,仍以前面的代码片段为例,由于抛出的是算术异常(ArithmeticException),则对方法“toTest”而言,取参数(a=1,b=100)时,在执行到语句“result=a/b”时,会抛出算术异常。因此数据准备单元202可以得到一组异常参数取值(a=1,b=100),将该组参数取值与类名“Example”、方法名“toTest”、异常类型“ArithmeticException”组合,得到一组异常用例的测试数据,表示为{(a=1,b=100)、Example、toTest、ArithmeticException},其中参数取值、类名、方法名、异常类型分别构成了异常用例的测试数据中的各个分量。与前面描述的一样,上述异常用例的测试数据仅为一种示意性结构,不应将此作为对本发明的限制。
用例生成单元203使用的测试模板中的标签,包括逻辑标签及普通标签。其中逻辑标签用于判断各组测试数据属于正常用例还是异常用例,并对各组正常用例的测试数据和各组异常用例的测试数据进行迭代,以生成与测试数据组数一致数量的单元测试用例。普通标签用于在每次迭代中,对各组测试数据中的分量进行提取。用例生成单元203利用测试模板中的标签对测试数据进行解析,就可以生成与测试数据组数一致数量的单元测试用例。
为了更好地说明上述过程,下面提供了一种测试模板的示意代码:
上述代码中,以#开始的标签就是逻辑标签,以$开始的标签就是普通标签。在上述测试模板中,由“<#if exception?exists>”逻辑标签实现了对正常用例的测试数据还是异常用例的测试数据的判断,由“<#list methods as method>、<#list exception asexceptions>”两个逻辑标签分别实现了对各组正常用例的测试数据和各组异常用例的测试数据的迭代,在迭代过程中,各个普通标签会对该标签指示的测试数据中的分量进行提取。例如上述测试模板中,${metadata.testName}表示提取测试数据中的类名,并由提取的测试数据中的类名形成测试用例的类名,${metadata.className}表示提取测试数据中的类名,${method.name}表示提取测试数据中的方法名,${method.arguments}表示提取测试数据中的参数取值,${method.expected}表示提取测试数据中的方法返回类型,并在该方法返回类型为基本数据类型(如整型、浮点型等)时,根据测试数据中的参数取值确定方法返回值,${exception.name}表示提取测试数据中的异常类型。
另外从上述测试模板中还可以看出,逻辑标签进一步还用于判断各组正常用例的测试数据中的方法返回类型分量是否为空,如果是,则用例生成单元203在生成该组测试数据对应的单元测试用例中给出提示信息。
用例生成单元203利用上述测试模板中的标签对数据准备单元202提取的两组正常用例的测试数据以及一组异常用例的测试数据进行解析,可以得到下面3个单元测试用例:
其中,用例1和用例2为正常测试用例,用例3为异常测试用例。用例生成单元203利用测试模板中的标签对测试数据进行解析,可以采用模板工具实现,如使用Freemaker、Velocity等现有的模板工具,在此不再详述。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (6)
1.一种自动生成单元测试用例的方法,包括:
A.对待测代码进行语法分析,生成所述待测代码的抽象语法树;
B.根据所述抽象语法树确定所述待测代码的特征信息,并根据所述特征信息确定一组或多组测试数据,其中所述特征信息包括所述待测代码中的类名、方法名、方法返回值、方法中的判定条件及方法抛出异常类型;
C.利用预置的测试模板中的标签对所述一组或多组测试数据进行解析,以生成一个或多个单元测试用例,其中所述标签包括:逻辑标签及普通标签,其中所述逻辑标签用于判断各组测试数据属于正常用例还是异常用例,并对各组正常用例的测试数据和各组异常用例的测试数据进行迭代,以生成与测试数据组数一致数量的单元测试用例,所述普通标签用于在每次迭代中,对各组测试数据中的分量进行提取。
2.根据权利要求1所述的方法,其特征在于,根据所述特征信息确定一组或多组测试数据的步骤具体包括:
根据方法中的判定条件确定该方法的一组或多组正常参数取值,并将该方法的各组正常参数取值分别与该方法所属类名、该方法名及该方法返回值组合,得到正常用例的测试数据;根据方法抛出异常类型确定该方法的一组或多组异常参数取值,并将该方法的各组异常参数取值分别与该方法所属类名、该方法名及该方法抛出异常类型组合,得到异常用例的测试数据。
3.根据权利要求1所述的方法,其特征在于,所述逻辑标签进一步还用于判断各组正常用例的测试数据中的方法返回值分量是否为空,如果是,所述C在生成该组测试数据对应的单元测试用例中给出提示信息。
4.一种自动生成单元测试用例的装置,包括:
分析单元,用于对待测代码进行语法分析,生成所述待测代码的抽象语法树;
数据准备单元,用于根据所述抽象语法树确定所述待测代码的特征信息,并根据所述特征信息确定一组或多组测试数据,其中所述特征信息包括所述待测代码中的类名、方法名、方法返回值、方法中的判定条件及方法抛出异常类型;
用例生成单元,用于利用预置的测试模板中的标签对所述一组或多组测试数据进行解析,以生成一个或多个测试用例,其中所述标签包括:逻辑标签及普通标签,其中所述逻辑标签用于判断各组测试数据属于正常用例还是异常用例,并对各组正常用例的测试数据和各组异常用例的测试数据进行迭代,以生成与测试数据组数一致数量的单元测试用例,所述普通标签用于在每次迭代中,对各组测试数据中的分量进行提取。
5.根据权利要求4所述的装置,其特征在于,所述数据准备单元根据所述特征信息确定一组或多组测试数据的方式具体包括:
根据方法中的判定条件确定该方法的一组或多组正常参数取值,并将该方法的各组正常参数取值分别与该方法所属类名、该方法名及该方法返回值组合,得到正常用例的测试数据;根据方法抛出异常类型确定该方法的一组或多组异常参数取值,并将该方法的各组异常参数取值分别与该方法所属类名、该方法名及该方法抛出异常类型组合,得到异常用例的测试数据。
6.根据权利要求4所述的装置,其特征在于,所述逻辑标签进一步还用于判断各组正常用例的测试数据中的方法返回值分量是否为空,如果是,所述用例生成单元在生成该组测试数据对应的单元测试用例中给出提示信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210235768.8A CN103530223B (zh) | 2012-07-06 | 2012-07-06 | 一种自动生成单元测试用例的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210235768.8A CN103530223B (zh) | 2012-07-06 | 2012-07-06 | 一种自动生成单元测试用例的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103530223A CN103530223A (zh) | 2014-01-22 |
CN103530223B true CN103530223B (zh) | 2018-05-04 |
Family
ID=49932253
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210235768.8A Active CN103530223B (zh) | 2012-07-06 | 2012-07-06 | 一种自动生成单元测试用例的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103530223B (zh) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104731587A (zh) * | 2015-03-12 | 2015-06-24 | 用友网络科技股份有限公司 | 单元测试数据生成方法和单元测试数据生成系统 |
CN106294107A (zh) * | 2015-05-27 | 2017-01-04 | 富士通株式会社 | 生成网页页面的测试用例的方法和装置 |
CN107038110A (zh) * | 2016-02-03 | 2017-08-11 | 北京京东尚科信息技术有限公司 | 白盒测试的方法和系统 |
CN106250310B (zh) * | 2016-07-25 | 2019-01-29 | 微梦创科网络科技(中国)有限公司 | 一种测试用例生成方法及装置 |
CN106610899B (zh) * | 2016-12-30 | 2020-01-14 | 中国科学院长春光学精密机械与物理研究所 | 一种测试用例生成方法及装置 |
CN107038119B (zh) * | 2017-03-31 | 2019-12-03 | 上海东软载波微电子有限公司 | 测试用例自动生成方法及装置 |
CN107193737A (zh) * | 2017-05-19 | 2017-09-22 | 郑州云海信息技术有限公司 | 一种自动化搭建pxe测试环境的方法 |
CN107480053B (zh) * | 2017-07-21 | 2021-08-17 | 销冠网络科技有限公司 | 一种软件测试数据生成方法及装置 |
CN109992498B (zh) * | 2017-12-29 | 2022-12-02 | 北京京东尚科信息技术有限公司 | 测试用例的生成方法及系统、计算机系统 |
CN108459964B (zh) * | 2018-03-06 | 2021-05-04 | 平安科技(深圳)有限公司 | 测试用例选择方法、装置、设备以及计算机可读存储介质 |
CN108763094B (zh) * | 2018-06-01 | 2021-08-10 | 百度在线网络技术(北京)有限公司 | 测试用例生成方法、装置、设备及存储介质 |
CN108959089A (zh) * | 2018-07-04 | 2018-12-07 | 沈文策 | 一种测试用例生成方法及装置 |
CN109299003A (zh) * | 2018-08-31 | 2019-02-01 | 苏州洞察云信息技术有限公司 | 一种面向复杂软件的全自动测试用例驱动生成系统 |
CN109213683A (zh) * | 2018-09-06 | 2019-01-15 | 无线生活(杭州)信息科技有限公司 | 测试用例生成方法及装置 |
CN111190807B (zh) * | 2018-11-14 | 2023-08-18 | 杭州萤石软件有限公司 | 一种埋点测试方法及设备 |
US11093379B2 (en) | 2019-07-22 | 2021-08-17 | Health Care Service Corporation | Testing of complex data processing systems |
CN112286784B (zh) * | 2019-07-23 | 2024-05-10 | 腾讯科技(深圳)有限公司 | 一种测试用例生成方法、装置、服务器及存储介质 |
CN111078526A (zh) * | 2019-11-04 | 2020-04-28 | 泰康保险集团股份有限公司 | 一种测试用例的生成方法、装置及存储介质 |
CN111782526A (zh) * | 2020-06-30 | 2020-10-16 | 北京同邦卓益科技有限公司 | 一种接口测试方法、装置、电子设备及存储介质 |
CN112306868A (zh) * | 2020-10-26 | 2021-02-02 | 深圳创维-Rgb电子有限公司 | 谷歌移动服务的自动测试方法、终端设备以及存储介质 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1908892A (zh) * | 2005-08-01 | 2007-02-07 | 王彤 | 测试用例设计方法和系统 |
CN101183332A (zh) * | 2007-11-21 | 2008-05-21 | 北京中星微电子有限公司 | 一种根据程序内容自动生成测试数据集的方法和装置 |
CN101436128A (zh) * | 2007-11-16 | 2009-05-20 | 北京邮电大学 | 软件测试用例自动生成方法及系统 |
EP2074507A1 (en) * | 2006-09-20 | 2009-07-01 | National ICT Australia Limited | Generating a transition system for use with model checking |
CN101515250A (zh) * | 2009-04-09 | 2009-08-26 | 腾讯科技(深圳)有限公司 | 对软件系统进行测试的方法和装置 |
CN101593145A (zh) * | 2008-05-29 | 2009-12-02 | 福建升腾资讯有限公司 | 高效性高覆盖率功能测试用例设计方法 |
CN102271066A (zh) * | 2011-08-22 | 2011-12-07 | 中兴通讯股份有限公司 | 命令行自动化智能测试方法及系统 |
CN102402430A (zh) * | 2010-09-14 | 2012-04-04 | 无锡中星微电子有限公司 | 一种利用脚本生成随机测试例方法和系统 |
-
2012
- 2012-07-06 CN CN201210235768.8A patent/CN103530223B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1908892A (zh) * | 2005-08-01 | 2007-02-07 | 王彤 | 测试用例设计方法和系统 |
EP2074507A1 (en) * | 2006-09-20 | 2009-07-01 | National ICT Australia Limited | Generating a transition system for use with model checking |
CN101436128A (zh) * | 2007-11-16 | 2009-05-20 | 北京邮电大学 | 软件测试用例自动生成方法及系统 |
CN101183332A (zh) * | 2007-11-21 | 2008-05-21 | 北京中星微电子有限公司 | 一种根据程序内容自动生成测试数据集的方法和装置 |
CN101593145A (zh) * | 2008-05-29 | 2009-12-02 | 福建升腾资讯有限公司 | 高效性高覆盖率功能测试用例设计方法 |
CN101515250A (zh) * | 2009-04-09 | 2009-08-26 | 腾讯科技(深圳)有限公司 | 对软件系统进行测试的方法和装置 |
CN102402430A (zh) * | 2010-09-14 | 2012-04-04 | 无锡中星微电子有限公司 | 一种利用脚本生成随机测试例方法和系统 |
CN102271066A (zh) * | 2011-08-22 | 2011-12-07 | 中兴通讯股份有限公司 | 命令行自动化智能测试方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN103530223A (zh) | 2014-01-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103530223B (zh) | 一种自动生成单元测试用例的方法及装置 | |
CN110764753B (zh) | 一种业务逻辑代码生成方法、装置、设备及存储介质 | |
CN104102574B (zh) | 应用程序测试方法及装置 | |
CN103902456B (zh) | 测试脚本处理装置、系统及方法 | |
WO2007076080A3 (en) | Analyzing content to determine context and serving relevant content based on the context | |
CN106485389A (zh) | 审批流的动态更新方法和装置 | |
WO2010093424A3 (en) | Methods, apparatus, and systems for facilitating and/or verifying locate and/or marking operations | |
CN104657245B (zh) | 基于amba总线的模块级uvm验证平台的自动生成装置 | |
CN107480053A (zh) | 一种软件测试数据生成方法及装置 | |
CN103235759A (zh) | 测试用例生成方法和装置 | |
CN103780624B (zh) | 一种面向复杂系统的通用应用层网络通信协议应用方法 | |
CN109003648A (zh) | 口腔门诊语音电子病历生成方法和计算机可读存储介质 | |
CN108038294A (zh) | Uvm环境搭建方法和系统 | |
CN106528823B (zh) | 一种报文配置及输出方法及装置 | |
CN105574246B (zh) | 版图的ip模块合成方法 | |
CN103309807B (zh) | 程序测试方法及平台 | |
CN202143092U (zh) | 报文处理系统 | |
JP5316485B2 (ja) | ソフトウェア開発支援装置、ソフトウェア開発支援方法およびソフトウェア開発支援プログラム | |
CN109564507A (zh) | 格式特定的数据处理操作 | |
US8949167B2 (en) | Method and device for the quality analysis of system models | |
Ahmed et al. | Towards Increase in Quality by Preprocessed Source Code and Measurement Analysis of Software Applications | |
CN104461882B (zh) | 一种符合do‑178b/c a级软件的模型验证方法 | |
CN104657271B (zh) | 一种卫生信息共享文档标准符合性自动化测试方法 | |
CN106844200A (zh) | 生成测试用例的方法及系统 | |
CN107544901A (zh) | 数据格式检验方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
EXSB | Decision made by sipo to initiate substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |