CN110221960A - 生成测试用例的方法及装置、计算机设备、存储介质 - Google Patents
生成测试用例的方法及装置、计算机设备、存储介质 Download PDFInfo
- Publication number
- CN110221960A CN110221960A CN201910319423.2A CN201910319423A CN110221960A CN 110221960 A CN110221960 A CN 110221960A CN 201910319423 A CN201910319423 A CN 201910319423A CN 110221960 A CN110221960 A CN 110221960A
- Authority
- CN
- China
- Prior art keywords
- field
- software interface
- value
- length
- case
- 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
- 238000012360 testing method Methods 0.000 title claims abstract description 127
- 238000000034 method Methods 0.000 title claims abstract description 42
- 230000015654 memory Effects 0.000 claims description 22
- 230000006870 function Effects 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 16
- 230000000694 effects Effects 0.000 description 5
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000000151 deposition Methods 0.000 description 1
- 238000005194 fractionation Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
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
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
【技术领域】
本发明涉及计算机领域,尤其涉及一种生成测试用例的方法及装置、计算机设备、存储介质。
【背景技术】
现有技术中,在进行接口测试时,如果不按照提供的接口文档定义传入参数,就会抛出异常,并没有捕获该异常并给出提示。现有技术的自动化测试方案中,接口自动化测试的测试数据都是由测试人员预先填入,再由自动化工具读取数据进行组装后调用接口进行测试,如果数据量比较大,将耗费大量的人力。大多数测试人员在接口测试过程中,都关注接口的业务功能,而并不关注接口的本身的属性,即便有关注也是针对特定字段,而非整个接口的所有字段,这样导致接口测试并不完整,很有可能遗漏位置的BUG。
针对相关技术中存在的上述问题,目前尚未发现有效的解决方案。
【发明内容】
有鉴于此,本发明实施例提供了一种生成测试用例的方法及装置、计算机设备、存储介质。
一方面,本发明实施例提供了一种生成测试用例的方法,所述方法包括:获取软件接口定义的字段内容,其中,所述软件接口包括一个或多个字段内容;确定所述字段内容的字段类型和字段长度;使用所述字段类型和所述字段长度生成所述软件接口的测试用例。
可选的,获取软件接口定义的字段内容包括:解析所述软件接口的接口函数;从所述接口函数的指定位置读取所述字段内容。
可选的,确定所述字段内容的字段类型和字段长度包括:在所述软件接口的描述信息表中查找所述字段内容的字段标识,其中,所述描述信息表包括所述字段内容的:字段标识,字段类型;按照所述字段标识从所述描述信息表中检索对应的字段类型,在所述字段类型未限定长度时,确定所述字段长度为无限大,在所述字段类型限定长度时,将限定的长度确定为所述字段长度。
可选的,使用所述字段类型和所述字段长度生成所述软件接口的测试用例包括:采用等价类设计策略将所述字段类型划分为一个或多个有效等价类和一个或多个无效等价类;确定所述有效等价类的边界值,和所述无效等价类的范围;将所述有效等价类的边界值,以及所述无效等价类的范围内的多个任意值确定为所述软件接口的测试用例,其中,所述边界值和所述任意值用于表征字段长度。
可选的,在采用等价类设计策略将所述字段类型划分为一个或多个有效等价类和一个或多个无效等价类之后,所述方法还包括:确定所述字段内容中的指定格式或指定值集合;在所述无效等价类中使用至少一个采用所述指定格式编辑的值和至少一个未采用所述指定格式编辑的值,或,在所述无效等价类中使用至少一个属于所述指定值集合中的值和至少一个不属于所述指定值集合中的值,生成所述软件接口的测试用例;在所述有效等价类中使用所述指定格式编辑的边界值或属于所述指定值集合的边界值,生成所述软件接口的测试用例。
可选的,在使用所述字段类型和所述字段长度生成所述软件接口的测试用例之后,所述方法还包括:将所述测试用例存储至指定文件;使用所述测试用例测试所述软件接口,并得到测试结果。
可选的,使用所述测试用例测试所述软件接口包括:在测试所述软件接口中的目标字段时,为所述软件接口选择第一类型用例,所述软件接口之外的其他接口选择第二类型用例,其中,第一类型用例的字段值包括所述有效等价类的边界值和所述无效等价类的范围内的多个任意值,所述第二类型用例的字段值为所述有效等价类的任意值;使用所述第一类型用例和所述第二类型用例测试所述软件接口。
另一方面,本发明实施例提供了一种生成测试用例的装置,所述装置包括:获取模块,用于获取软件接口定义的字段内容,其中,所述软件接口包括一个或多个字段内容;确定模块,用于确定所述字段内容的字段类型和字段长度;生成模块,用于使用所述字段类型和所述字段长度生成所述软件接口的测试用例。
可选的,所述获取模块包括:解析单元,用于解析所述软件接口的接口函数;读取单元,用于从所述接口函数的指定位置读取所述字段内容。
可选的,所述确定模块包括:查找单元,用于在所述软件接口的描述信息表中查找所述字段内容的字段标识,其中,所述描述信息表包括所述字段内容的:字段标识,字段类型;检索单元,用于按照所述字段标识从所述描述信息表中检索对应的字段类型;确定单元,用于在所述字段类型未限定长度时,确定所述字段长度为无限大,在所述字段类型限定长度时,将限定的长度确定为所述字段长度。
可选的,所述生成模块包括:划分单元,用于采用等价类设计策略将所述字段类型划分为一个或多个有效等价类和一个或多个无效等价类;确定单元,用于确定所述有效等价类的边界值,和所述无效等价类的范围;第一生成单元,用于将所述有效等价类的边界值,以及所述无效等价类的范围内的多个任意值确定为所述软件接口的测试用例,其中,所述边界值和所述任意值用于表征字段长度。
可选的,所述生成模块还包括:确定单元,用于在所述划分单元采用等价类设计策略将所述字段类型划分为一个或多个有效等价类和一个或多个无效等价类之后,确定所述字段内容中的指定格式或指定值集合;第二生成单元,用于在所述无效等价类中使用至少一个采用所述指定格式编辑的值和至少一个未采用所述指定格式编辑的值,或,在所述无效等价类中使用至少一个属于所述指定值集合中的值和至少一个不属于所述指定值集合中的值,生成所述软件接口的测试用例;在所述有效等价类中使用所述指定格式编辑的边界值或属于所述指定值集合的边界值,生成所述软件接口的测试用例。
可选的,所述装置还包括:存储模块,用于在所述生成模块使用所述字段类型和所述字段长度生成所述软件接口的测试用例之后,将所述测试用例存储至指定文件;测试模块,用于使用所述测试用例测试所述软件接口,并得到测试结果。
可选的,所述测试模块包括:测试单元,用于在测试所述软件接口中的目标字段时,为所述软件接口选择第一类型用例,所述软件接口之外的其他接口选择第二类型用例,其中,第一类型用例的字段值包括所述有效等价类的边界值和所述无效等价类的范围内的多个任意值,所述第二类型用例的字段值为所述有效等价类的任意值;使用所述第一类型用例和所述第二类型用例测试所述软件接口。
根据本发明的又一个实施例,还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明,通过确定软件接口的字段类型和字段长度,并根据字段类型和长度生成测试用例,进而可以使用测试用例对软件接口进行测试,解决了现有技术中测试软件接口效率低的技术问题,通过自动形成测试用例,实现了测试的完全自动化,提高了测试效率。
【附图说明】
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其它的附图。
图1是本发明实施例的一种生成测试用例的移动终端的硬件结构框图;
图2是根据本发明实施例的生成测试用例的方法的流程图;
图3是本发明实施例生成软件接口的测试用例的流程图;
图4是根据本发明实施例的生成测试用例的装置的结构框图。
【具体实施方式】
下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
实施例1
本申请实施例一所提供的方法实施例可以在移动终端、服务器、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本发明实施例的一种生成测试用例的计算机终端的硬件结构框图。如图1所示,计算机终端10可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述计算机终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的生成测试用例的方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端10的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种生成测试用例的方法,图2是根据本发明实施例的生成测试用例的方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,获取软件接口定义的字段内容,其中,软件接口包括一个或多个字段内容;
本实施例中的软件接口是软件数据代码的一部分,接口是软件内部的各个功能模块进行数据调用或软件间进行数据调用的数据内容;在对整个软件进行测试时,需要获取定义的全部字段,在对软件的某个目标字段进行测试时,获取该目标字段即可;
步骤S204,确定字段内容的字段类型和字段长度;
步骤S206,使用字段类型和字段长度生成软件接口的测试用例。
通过本实施例的方案,通过确定软件接口的字段类型和字段长度,并根据字段类型和长度生成测试用例,进而可以使用测试用例对软件接口进行测试,解决了现有技术中测试软件接口效率低的技术问题,通过自动形成测试用例,实现了测试的完全自动化,提高了测试效率。
本实施例中的获取软件接口定义的字段内容包括:解析软件接口的接口函数;从接口函数的指定位置读取字段内容。
软件接口的接口内容由字段和函数组成,字段写在函数中,可以通过查找接口的函数来确定接口定义的字段。在一个示例中,
如接口内容为:
#include<stdio.h>
int main()
{
printf(name=”a”);
return 0;
}
其中,main()为主函数,printf()为输出子函数,字段内容为name,包括了name作为一个软件接口的函数字段时,对应的字段类型,长度等信息。
在本实施例的一个实施方式中,确定字段内容的字段类型和字段长度包括:在软件接口的描述信息表中查找字段内容的字段标识,其中,描述信息表包括字段的:字段标识,字段类型、描述信息、备注信息等;按照字段标识从描述信息表中检索对应的字段类型,在字段类型未限定长度时,确定字段长度为无限大,在字段类型限定长度时,将限定的长度确定为字段长度。
比如本实施例的软件接口定义了三个字段,分别为:NAME,VARCHAR2(10);AGE,NUMBER(2);BIRTHDAY,date。
每个接口字段对应一个类型,字段类型也属于接口定义的一部分,字段类型示例如下:
INTEGER:整数型
CHAR(n):字符型,固定长度n
VARCHAR2(n):字符型,可变长度,最大n
NUMBER(n):数字型,长度为n
NUMBER(p,s):数字型,整数长度p,小数点后长度s
BLOB:二进制数据
DATE:时间。
有一些字段还会包括字段长度,例如第一个字段NAME,拆分后,类型为VARCHAR2,长度为10
通常接口定义会通过描述信息表来表示,表1为本实施例的描述信息表。
表1
将类型及长度中“()”前的作为类型,“()”内的作为长度,若没有()则该字段只有类型,没有长度,若()中有”,”的,将“,”前的作为整数长度,“,”后的作为小数长度。
针对一些特定的字段,还有对应指定了格式或者指定了值,在描述信息表的备注中指定了格式或者指定了值(如birthday和Sex),需要对指定的格式或者值按照等价类和边界值方法进行用例设计,并生成数据。
表1中的字段,在确定字段的字段类型和字段长度之后,可以得到信息如下:
name,类型varchar2,最大长度10
age,类型NUMBER2,最大长度2
birthday,类型DATE,没有指定长度,但是有指定格式YYYY-MM-DD
sex,类型CHAR,固定长度1,并且备注中指定了值只能是F或M
提取其中的类型和长度。
图3是本发明实施例生成软件接口的测试用例的流程图,使用字段类型和字段长度生成软件接口的测试用例包括:
S302,采用等价类设计策略将字段类型划分为一个或多个有效等价类和一个或多个无效等价类;
进一步的,在采用等价类设计策略将字段类型划分为一个或多个有效等价类和一个或多个无效等价类之后,还包括:确定字段内容中的指定格式或指定值集合;在无效等价类中使用至少一个采用指定格式编辑的值和至少一个未采用指定格式编辑的值,或,在无效等价类中使用至少一个属于指定值集合中的值和至少一个不属于指定值集合中的值,生成软件接口的测试用例;在所述有效等价类中使用所述指定格式编辑的边界值或属于所述指定值集合的边界值,生成所述软件接口的测试用例。
本实施例的等价类设计策略是指将所有可能的输入类型划分为若干小类,再从中挑选一部分具有代表性的数据作为测试用例;边界值测试设计策略是指将可输入的边界值进行测试,可以作为等价类方法的补充,也可以单独使用,挑选边界值数据作为测试用例更具有代表性。
在划分后,还可以再按照优先级挑选一个或多个有效等价类和或多个一个无效等价类作为测试用例。
在一个示例中,表1中的字段类型varchar2(10),由于varchar2的有效长度是1~10个字符,因此按照等价类划分时,1~10个字符为有效等价类,其余长度的字符或者非字符均为无效等价类,有效长度为10个字符,因此可以划分为以下几个案例:
Case1:1~10个字符
Case2:小于1个字符
Case3:大于10个字符
Case4:非字符
其中只有case1属于有效等价类,其他都属于无效等价类。由于case1中的1~10个字符落在varchar2的有效等价类的范围中,因此是有效等价类,其余的均没有落在有效等价类的范围中,因此是无效等价类。有一些特殊的字段(如表1中的birthday字段),字段还包括备注的指定值或指定格式时,如sex字段,备注指定值为F或M,birthday字段,指定格式为YYYY-MM-DD,在划分有效等价类时,还需要考虑其指定值和指定格式,只有属于指定值或者属于指定格式的case,才属于有效等价类。
S304,确定有效等价类的边界值,和无效等价类的范围;
S306,将有效等价类的边界值,以及无效等价类的范围内的多个任意值确定为软件接口的测试用例,其中,边界值和任意值用于表征字段长度。在一个示例中,无效等价类的范围内的多个任意值包括无效等价类的临界值和空字符(NULL)。
在此以上述示例继续说明,根据边界策略在有效等价类中取边界值1个字符和10个字符的情况,在无效等价类中取小于1个字符,即为空,取大于10个字符,即11个字符,非字符,即为NULL的情况。分别取10,11,0就可以生成5条测试用例,这里的10,11,0指的是字段长度,取10个字符属于有效等价类的边界值(边界值为范围的临界值,包括有效等价类边界值和无效等价类的边界值,由于有效等价类的范围为1~10个字符,因此边界值为1和10,无效等价类的范围为小于1个字符和大于10个字符,因此边界值为0和11),11个字符,0个字符都是无效等价类的边界值,生成5条用例还包含1个字符,非字符两种,一共五种,分别为:10,11,0,1,NULL。
在本实施例中,在使用字段类型和字段长度生成软件接口的测试用例之后,还包括:将测试用例存储至指定文件;使用测试用例测试软件接口,并得到测试结果。
测试用例以标题行和数据行的格式存储在指定文件中,在测试的过程中,从指定文件中读取标题行和数据行;依次读取指定文件的标题行中的每个输入域的字段标识,根据每个输入域的字段标识将数据行中的对应数据赋值给输入域,即字段的数据域。
测试用例是为了验证软件接口的某个字段在输入符合特定场景数据后,接口的输出情况。每条测试用例只包含一个字段的一个测试点,而接口定义中不仅只有一个字段,为了验证这个字段的准确性,其他字段是不能变动的,其他字段都是正常的。当然,在验证两个测试点的相关性时,可以同时使用两个测试点。使用测试用例测试软件接口包括:在测试所述软件接口中的目标字段时,为所述软件接口选择第一类型用例,所述软件接口之外的其他接口选择第二类型用例,其中,第一类型用例的字段值包括所述有效等价类的边界值和所述无效等价类的范围内的多个任意值,所述第二类型用例的字段值为所述有效等价类的任意值;使用第一类型用例和第二类型用例测试软件接口。
下面进行举例说明:
测试Case1:验证接口name字段只有一个字符的情况
测试数据:{name=”a”,age=“12”,birthday=“2000-01-01”,Sex=“F”,salary=”3000.00”}
测试Case2:验证该接口name字段小于一个字符的情况
测试数据:{name=””,age=“12”,birthday=“2000-01-01”,Sex=“F”,salary=”3000.00”}
测试Case3:验证接口name字段10个字符的情况
测试数据:{name=”abcdefghij”,age=“12”,birthday=“2000-01-01”,Sex=“F”,salary=”3000.00”}
测试Case4:验证接口name字段超过10个字符的情况
如此类推。依次会输出测试结果,如Case1应当在name的输出位置输出“a”,Case2输出错误,则可以确定接口中的name字段是可以正常使用的。
在第一个字段(name)验证完成后,循环第二个字段age,类型number,长度2
测试Case2-1:验证该接口字段age只有1位数字的情况,边界值为0
测试数据:{name=”a”,age=0,birthday=“2000-01-01”,Sex=“F”,salary=”3000.00”}
测试Case2-2:验证该接口字段age有两位数字的情况,边界值99
测试数据{{name=”a”,age=99,birthday=“2000-01-01”,Sex=“F”,salary=”3000.00”}}
测试Case2-3:验证该接口字段age没有数字的情况(无效等价类),边界值空
测试数据:{name=”a”,age=,birthday=“2000-01-01”,Sex=“F”,salary=”3000.00”}
测试Case2-4:验证该接口字段age超过2位数字的情况(无效等价类),边界值100
测试数据:{name=”a”,age=100,birthday=“2000-01-01”,Sex=“F”,salary=”3000.00”}
如此循环将接口定义中的每个字段按照等价类方法和边界值方法生成若干条测试数据来对接口进行测试。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
实施例2
在本实施例中还提供了一种生成测试用例的装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图4是根据本发明实施例的生成测试用例的装置的结构框图,如图4所示,该装置包括:
获取模块40,用于获取软件接口定义的字段内容,其中,所述软件接口包括一个或多个字段内容;
确定模块42,用于确定所述字段内容的字段类型和字段长度;
生成模块44,用于使用所述字段类型和所述字段长度生成所述软件接口的测试用例。
可选的,所述获取模块包括:解析单元,用于解析所述软件接口的接口函数;读取单元,用于从所述接口函数的指定位置读取所述字段内容。
可选的,所述确定模块包括:查找单元,用于在所述软件接口的描述信息表中查找所述字段的字段标识,其中,所述描述信息表包括所述字段内容的:字段标识,字段类型;检索单元,用于按照所述字段标识从所述描述信息表中检索对应的字段类型;确定单元,用于在所述字段类型未限定长度时,确定所述字段长度为无限大,在所述字段类型限定长度时,将限定的长度确定为所述字段长度。
可选的,所述生成模块包括:划分单元,用于采用等价类设计策略将所述字段类型划分为一个或多个有效等价类和一个或多个无效等价类;确定单元,用于确定所述有效等价类的边界值,和所述无效等价类的范围;第一生成单元,用于将所述有效等价类的边界值,以及所述无效等价类的范围内的多个任意值确定为所述软件接口的测试用例,其中,所述边界值和所述任意值用于表征字段长度。
可选的,所述生成模块还包括:确定单元,用于在所述划分单元采用等价类设计策略将所述字段类型划分为一个或多个有效等价类和一个或多个无效等价类之后,确定所述字段内容中的指定格式或指定值集合;第二生成单元,用于在所述无效等价类中使用至少一个采用所述指定格式编辑的值和至少一个未采用所述指定格式编辑的值,或,在所述无效等价类中使用至少一个属于所述指定值集合中的值和至少一个不属于所述指定值集合中的值,生成所述软件接口的测试用例;在所述有效等价类中使用所述指定格式编辑的边界值或属于所述指定值集合的边界值,生成所述软件接口的测试用例。
可选的,所述装置还包括:存储模块,用于在所述生成模块使用所述字段类型和所述字段长度生成所述软件接口的测试用例之后,将所述测试用例存储至指定文件;测试模块,用于使用所述测试用例测试所述软件接口,并得到测试结果。
可选的,所述测试模块包括:测试单元,用于在测试所述软件接口中的目标字段时,为所述软件接口选择第一类型用例,所述软件接口之外的其他接口选择第二类型用例,其中,第一类型用例的字段值包括所述有效等价类的边界值和所述无效等价类的范围内的多个任意值,所述第二类型用例的字段值为所述有效等价类的任意值;使用所述第一类型用例和所述第二类型用例测试所述软件接口。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
实施例3
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机装置(可以是个人计算机,服务器,或者网络装置等)或处理器(Processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:
S1,获取软件接口定义的字段内容,其中,所述软件接口包括一个或多个字段内容;
S2,确定所述字段内容的字段类型和字段长度;
S3,使用所述字段类型和所述字段长度生成所述软件接口的测试用例。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取软件接口定义的字段内容,其中,所述软件接口包括一个或多个字段内容;
S2,确定所述字段内容的字段类型和字段长度;
S3,使用所述字段类型和所述字段长度生成所述软件接口的测试用例。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
Claims (10)
1.一种生成测试用例的方法,其特征在于,所述方法包括:
获取软件接口定义的字段内容,其中,所述软件接口包括一个或多个字段内容;
确定所述字段内容的字段类型和字段长度;
使用所述字段类型和所述字段长度生成所述软件接口的测试用例。
2.根据权利要求1所述的方法,其特征在于,获取软件接口定义的字段内容包括:
解析所述软件接口的接口函数;
从所述接口函数的指定位置读取所述字段内容。
3.根据权利要求1所述的方法,其特征在于,确定所述字段内容的字段类型和字段长度包括:
在所述软件接口的描述信息表中查找所述字段内容的字段标识,其中,所述描述信息表包括所述字段内容的:字段标识,字段类型;
按照所述字段标识从所述描述信息表中检索对应的字段类型,在所述字段类型未限定长度时,确定所述字段长度为无限大,在所述字段类型限定长度时,将限定的长度确定为所述字段长度。
4.根据权利要求1所述的方法,其特征在于,使用所述字段类型和所述字段长度生成所述软件接口的测试用例包括:
采用等价类设计策略将所述字段类型划分为一个或多个有效等价类和一个或多个无效等价类;
确定所述有效等价类的边界值,和所述无效等价类的范围;
将所述有效等价类的边界值,以及所述无效等价类的范围内的多个任意值确定为所述软件接口的测试用例,其中,所述边界值和所述任意值用于表征字段长度。
5.根据权利要求4所述的方法,其特征在于,在采用等价类设计策略将所述字段类型划分为一个或多个有效等价类和一个或多个无效等价类之后,所述方法还包括:
确定所述字段内容中的指定格式或指定值集合;
在所述无效等价类中使用至少一个采用所述指定格式编辑的值和至少一个未采用所述指定格式编辑的值,或,在所述无效等价类中使用至少一个属于所述指定值集合中的值和至少一个不属于所述指定值集合中的值,生成所述软件接口的测试用例;在所述有效等价类中使用所述指定格式编辑的边界值或属于所述指定值集合的边界值,生成所述软件接口的测试用例。
6.根据权利要求4所述的方法,其特征在于,在使用所述字段类型和所述字段长度生成所述软件接口的测试用例之后,所述方法还包括:
将所述测试用例存储至指定文件;
使用所述测试用例测试所述软件接口,并得到测试结果。
7.根据权利要求6所述的方法,其特征在于,使用所述测试用例测试所述软件接口包括:
在测试所述软件接口中的目标字段时,为所述软件接口选择第一类型用例,所述软件接口之外的其他接口选择第二类型用例,其中,第一类型用例的字段值包括所述有效等价类的边界值和所述无效等价类的范围内的多个任意值,所述第二类型用例的字段值为所述有效等价类的任意值;
使用所述第一类型用例和所述第二类型用例测试所述软件接口。
8.一种生成测试用例的装置,其特征在于,所述装置包括:
获取模块,用于获取软件接口定义的字段内容,其中,所述软件接口包括一个或多个字段内容;
确定模块,用于确定所述字段内容的字段类型和字段长度;
生成模块,用于使用所述字段类型和所述字段长度生成所述软件接口的测试用例。
9.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述方法的步骤。
10.一种计算机存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910319423.2A CN110221960A (zh) | 2019-04-19 | 2019-04-19 | 生成测试用例的方法及装置、计算机设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910319423.2A CN110221960A (zh) | 2019-04-19 | 2019-04-19 | 生成测试用例的方法及装置、计算机设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110221960A true CN110221960A (zh) | 2019-09-10 |
Family
ID=67819843
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910319423.2A Pending CN110221960A (zh) | 2019-04-19 | 2019-04-19 | 生成测试用例的方法及装置、计算机设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110221960A (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110968514A (zh) * | 2019-12-02 | 2020-04-07 | 北京明略软件系统有限公司 | 测试方法、装置、电子设备和存储介质 |
CN111506498A (zh) * | 2020-03-16 | 2020-08-07 | 平安科技(深圳)有限公司 | 测试用例的自动生成方法、装置、计算机设备及存储介质 |
CN113419964A (zh) * | 2021-07-14 | 2021-09-21 | 上海浦东发展银行股份有限公司 | 一种测试案例生成方法、装置、计算机设备及存储介质 |
CN113672520A (zh) * | 2021-09-08 | 2021-11-19 | 京东科技控股股份有限公司 | 测试案例的生成方法、装置、电子设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104123227A (zh) * | 2014-08-13 | 2014-10-29 | 广东电网公司信息中心 | 一种自动生成测试用例的方法 |
CN104407976A (zh) * | 2014-11-28 | 2015-03-11 | 联动优势电子商务有限公司 | 一种接口健壮性测试用例生成方法及装置 |
CN107239392A (zh) * | 2016-03-29 | 2017-10-10 | 腾讯科技(深圳)有限公司 | 一种测试方法、装置及终端 |
CN107291620A (zh) * | 2017-06-30 | 2017-10-24 | 郑州云海信息技术有限公司 | 一种测试用例生成方法及装置 |
CN108897688A (zh) * | 2018-06-29 | 2018-11-27 | 西安电子科技大学 | 基于bwdsp处理器的测试用例设计方法 |
-
2019
- 2019-04-19 CN CN201910319423.2A patent/CN110221960A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104123227A (zh) * | 2014-08-13 | 2014-10-29 | 广东电网公司信息中心 | 一种自动生成测试用例的方法 |
CN104407976A (zh) * | 2014-11-28 | 2015-03-11 | 联动优势电子商务有限公司 | 一种接口健壮性测试用例生成方法及装置 |
CN107239392A (zh) * | 2016-03-29 | 2017-10-10 | 腾讯科技(深圳)有限公司 | 一种测试方法、装置及终端 |
CN107291620A (zh) * | 2017-06-30 | 2017-10-24 | 郑州云海信息技术有限公司 | 一种测试用例生成方法及装置 |
CN108897688A (zh) * | 2018-06-29 | 2018-11-27 | 西安电子科技大学 | 基于bwdsp处理器的测试用例设计方法 |
Non-Patent Citations (1)
Title |
---|
汤惟: "《软件工程基础》", 31 August 2001, 西安交通大学出版社, pages: 104 - 105 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110968514A (zh) * | 2019-12-02 | 2020-04-07 | 北京明略软件系统有限公司 | 测试方法、装置、电子设备和存储介质 |
CN111506498A (zh) * | 2020-03-16 | 2020-08-07 | 平安科技(深圳)有限公司 | 测试用例的自动生成方法、装置、计算机设备及存储介质 |
CN111506498B (zh) * | 2020-03-16 | 2022-06-21 | 平安科技(深圳)有限公司 | 测试用例的自动生成方法、装置、计算机设备及存储介质 |
CN113419964A (zh) * | 2021-07-14 | 2021-09-21 | 上海浦东发展银行股份有限公司 | 一种测试案例生成方法、装置、计算机设备及存储介质 |
CN113672520A (zh) * | 2021-09-08 | 2021-11-19 | 京东科技控股股份有限公司 | 测试案例的生成方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110221960A (zh) | 生成测试用例的方法及装置、计算机设备、存储介质 | |
CN107102941B (zh) | 一种测试用例的生成方法及装置 | |
CN103886376B (zh) | 用于基于规则的内容过滤的系统和方法 | |
CN106843941B (zh) | 信息处理方法、装置和计算机设备 | |
CN116415206B (zh) | 运营商多数据融合方法、系统、电子设备及计算机存储介质 | |
CN109377383A (zh) | 产品数据同步方法、装置、计算机设备及存储介质 | |
CN115577858B (zh) | 基于区块链的碳排放量预测方法、装置及电子设备 | |
CN113946546B (zh) | 异常检测方法、计算机存储介质及程序产品 | |
CN104317891A (zh) | 一种对页面标注标签的方法及装置 | |
CN110232633A (zh) | 一种电子签约方法、装置、存储介质和服务器 | |
CN113204716A (zh) | 可疑洗钱用户交易关系确定方法及装置 | |
CN111813744A (zh) | 文件的搜索方法、装置、设备及存储介质 | |
CN109255161B (zh) | 一种net网表文件生成nod网表文件的方法 | |
CN105574091B (zh) | 信息推送方法及装置 | |
CN100493001C (zh) | G比特流率下多粒度的网络自动聚类方法 | |
CN101068162B (zh) | 一种实现告警位置条件选择的方法 | |
CN105843859B (zh) | 数据处理的方法、装置和设备 | |
CN102571381B (zh) | 一种信息存储方法以及信息存储装置 | |
CN113642594A (zh) | 报文分类方法及装置、电子设备、可读介质 | |
CN110472205A (zh) | 文件差异化的比对方法及装置、存储介质和电子装置 | |
CN110222286A (zh) | 信息获取方法、装置、终端和计算机可读存储介质 | |
CN106610899B (zh) | 一种测试用例生成方法及装置 | |
CN112817782B (zh) | 一种数据采集上报方法、装置、电子设备和存储介质 | |
CN108572948A (zh) | 门牌信息的处理方法及装置 | |
CN105653540A (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 |