CN114510425A - 一种测试用例生成方法及装置 - Google Patents
一种测试用例生成方法及装置 Download PDFInfo
- Publication number
- CN114510425A CN114510425A CN202210152124.6A CN202210152124A CN114510425A CN 114510425 A CN114510425 A CN 114510425A CN 202210152124 A CN202210152124 A CN 202210152124A CN 114510425 A CN114510425 A CN 114510425A
- Authority
- CN
- China
- Prior art keywords
- boundary
- test
- value
- test case
- data
- 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
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
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
技术领域
本申请涉及大数据领域,具体涉及测试用例生成方法及装置。
背景技术
目前在功能测试方面现有的实现都是功能测试和测试需求点分开操作,测试需求点通过xmind编写实现,测试人员通过头脑风暴的形式不断的拓展xmind上的功能测试需求点,在测试需求点设计编写完成以后,然后测试人员在按照xmind上的内容一一将测试需求点转换编写成功能测试用例,目前的测试用例需要测试人员手动编写,无法实现测试用例的自动生成,如何自动生成测试用例以及如何保证自动生成的测试用例更加精准仍然是目前的较大难题,此外通过头脑风暴拓展出测试需求点对应的测试数据由于随机性较强,数据特征无法收敛,导致测试效果底下,需要人工不断逐个筛选测试数据,因此成为了自动生成测试用例的障碍,基于上述论述,目前在测试用例自动生成方面存在诸多不足。
发明内容
针对现有技术中的问题中的至少一个,本申请提供一种测试用例生成方法及装置,通过获取一预设需求点思维导图上各子节点的测试需求点数据,然后利用预设的对应关系得到测试用例,测试需求点数据是基于边界值算法生成,从而可以以边界值为锚点,使得拓展出的测试数据具有收敛性,可以生成更为准确的测试用例,从而大大节约了功能测试用例的设计时间,提高了功能测试的效率。
本发明的一个方面提供一种测试用例生成方法,所述测试用例生成方法包括:
获取一预设需求点思维导图上各子节点的测试需求点数据;
根据每个测试需求点数据以及预设的测试需求点数据与测试用例字段的对应关系,生成测试用例;
其中,所述预设需求点思维导图上各子节点的测试需求点数据基于边界值算法生成,并且每个子节点对应的边界值相同或不同。
在优选的实施例中,针对所述预设需求点思维导图上的每个子节点,基于边界值算法生成所述预设需求点思维导图上各子节点的测试需求点数据,包括:
向该子节点导入边界输入参数,所述边界输入参数包括边界值类型和边界条件;
根据边界值类型将一同类型的输入值输入到该子节点,基于所述边界条件和预设的生成规则生成预期数据,并将所述输入值与所述预期数据作为该子节点的所述测试需求点数据。
在优选的实施例中,所述输入值类型为数字,所述边界值包括左边界值和右边界值,所述边界条件包括大于等于左边界值或者是小于等于边界值,所述基于所述边界条件和预设的生成规则生成预期数据,包括:
结合所述左边界值和右边界值,判断所述输入值是否满足所述边界条件,若满足,则基于所述边界条件对所述输入值进行减值处理或者增值处理,以逼近其中一个边界值;
将减值处理或者增值处理后的输入值和提交成功的预期结果共同作为所述预期数据。
在优选的实施例中,所述输入值类型为日期,所述边界值包括左边界日期和右边界日期,所述边界条件包括处于所述左边界日期和有边界日期限定的时间段内;所述基于所述边界条件和预设的生成规则生成预期数据,包括:
结合所述左边界日期和右边界日期,判断所述输入值是否满足所述边界条件,若满足,则基于所述边界条件对所述输入值进行减时差处理或者增时差处理,以逼近其中一个边界日期;
将减时差处理或者增时差处理后的输入值和提交成功的预期结果共同作为所述预期数据。
在优选的实施例中,所述输入值类型为字符串,所述边界值包括第一字符长度值和第二字符长度值,所述第一字符长度值小于所述第二字符长度值,所述边界条件包括大于等于所述第二字符长度值或者小于等于所述第一字符长度值,所述基于所述边界条件和预设的生成规则生成预期数据,包括:
结合所述第一字符长度值和第二字符长度值,判断所述输入值是否满足所述边界条件,若满足,则基于所述边界条件对所述输入值进行减值处理或者增值处理,以逼近其中一个边界值;
将减值处理或者增值处理后的输入值和提交成功的预期结果共同作为所述预期数据。
在优选的实施例中,针对每个子节点上对应的测试需求点数据,所述根据每个测试需求点数据以及预设的测试需求点数据与测试用例字段的对应关系,生成测试用例,包括:
根据对应子节点的数据结构确定所述测试需求点数据中各子数据的属性;所述对应关系包括每个子数据属性与测试用例字段的映射关系;
根据每个子数据的属性,结合对应子数据属性的映射关系,确定测试用例字段;
组合所述测试用例字段,形成所述测试用例。
在优选的实施例中,还包括:
建立测试需求点数据与测试用例字段的对应关系表。
本发明另一方面提供一种测试用例生成装置,所述测试用例生成装置包括:
获取模块,获取一预设需求点思维导图上各子节点的测试需求点数据;
生成模块,根据每个测试需求点数据以及预设的测试需求点数据与测试用例字段的对应关系,生成测试用例;
其中,所述预设需求点思维导图上各子节点的测试需求点数据基于边界值算法生成,并且每个子节点对应的边界值相同或不同。
在优选的实施例中,还包括:
输入模块,向该子节点导入边界输入参数,所述边界输入参数包括边界值类型和边界条件;
预期数据生成模块,根据边界值类型将一同类型的输入值输入到该子节点,基于所述边界条件和预设的生成规则生成预期数据,并将所述输入值与所述预期数据作为该子节点的所述测试需求点数据。
在优选的实施例中,所述输入值类型为数字,所述边界值包括左边界值和右边界值,所述边界条件包括大于等于左边界值或者是小于等于边界值,所述预期数据生成模块,包括:
判断单元,结合所述左边界值和右边界值,判断所述输入值是否满足所述边界条件,若满足,则基于所述边界条件对所述输入值进行减值处理或者增值处理,以逼近其中一个边界值;
预期数据生成单元,将减值处理或者增值处理后的输入值和提交成功的预期结果共同作为所述预期数据。
在优选的实施例中,所述输入值类型为日期,所述边界值包括左边界日期和右边界日期,所述边界条件包括处于所述左边界日期和有边界日期限定的时间段内;所述预期数据生成模块,包括:
判断单元,结合所述左边界日期和右边界日期,判断所述输入值是否满足所述边界条件,若满足,则基于所述边界条件对所述输入值进行减时差处理或者增时差处理,以逼近其中一个边界日期;
预期数据生成单元,将减时差处理或者增时差处理后的输入值和提交成功的预期结果共同作为所述预期数据。
在优选的实施例中,所述输入值类型为字符串,所述边界值包括第一字符长度值和第二字符长度值,所述第一字符长度值小于所述第二字符长度值,所述边界条件包括大于等于所述第二字符长度值或者小于等于所述第一字符长度值,所述基于所述边界条件和预设的生成规则生成预期数据,包括:
结合所述第一字符长度值和第二字符长度值,判断所述输入值是否满足所述边界条件,若满足,则基于所述边界条件对所述输入值进行减值处理或者增值处理,以逼近其中一个边界值;
将减值处理或者增值处理后的输入值和提交成功的预期结果共同作为所述预期数据。
在优选的实施例中,针对每个子节点上对应的测试需求点数据,所述生成模块包括:
属性确定单元,根据对应子节点的数据结构确定所述测试需求点数据中各子数据的属性;所述对应关系包括每个子数据属性与测试用例字段的映射关系;
测试用例字段确定单元,根据每个子数据的属性,结合对应子数据属性的映射关系,确定测试用例字段;
测试用例生成单元,组合所述测试用例字段,形成所述测试用例。
在优选的实施例中,还包括:
对应关系表建立模块,建立测试需求点数据与测试用例字段的对应关系表。
本发明的又一方面,本申请提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现所述的测试用例生成方法。
本发明的又一方面,本申请提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现所述的测试用例生成方法。
由上述技术方案可知,本申请提供的一种测试用例生成方法及装置,通过获取一预设需求点思维导图上各子节点的测试需求点数据,然后利用预设的对应关系得到测试用例,测试需求点数据是基于边界值算法生成,从而可以以边界值为锚点,使得拓展出的测试数据具有收敛性,可以生成更为准确的测试用例,从而大大节约了功能测试用例的设计时间,提高了功能测试的效率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本申请实施例中测试用例生成方法流程示意图。
图2是本申请实施例中图1中步骤S1的具体流程示意图。
图3是本申请实施例中图2中步骤S12的具体流程示意图之一。
图4是本申请实施例中图2中步骤S12的具体流程示意图之二。
图5是本申请实施例中图2中步骤S12的具体流程示意图之三。
图6是本申请实施例中图1中步骤S2的具体流程示意图。
图7是本申请实施例中执行测试用例生成方法的系统架构示意图。
图8是本申请实施例中具体场景下测试用例生成方法的具体流程示意图。
图9是本申请实施例中思维导图的结构示意图。
图10是本申请实施例中测试用例生成装置的结构示意图。
图11是本申请实施例中测试用例生成装置进一步包括的结构示意图。
图12是本申请实施例中的电子设备的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,本申请公开的测试用例生成方法及装置可用于金融领域,也可用于除金融领域之外的任意领域,本申请公开的测试用例生成方法及装置的应用领域不做限定。
目前在功能测试方面现有的实现都是功能测试和测试需求点分开操作,测试需求点通过xmind编写实现,测试人员通过头脑风暴的形式不断的拓展xmind上的功能测试需求点,在测试需求点设计编写完成以后,然后测试人员在按照xmind上的内容一一将测试需求点转换编写成功能测试用例。但是目前通过头脑风暴拓展出的功能需求点一方面准确率较低,测试效率较低。
针对现有技术中的问题,本申请提供一种测试用例生成方法及装置,通过获取一预设需求点思维导图上各子节点的测试需求点数据,然后利用预设的对应关系得到测试用例,测试需求点数据是基于边界值算法生成,从而可以以边界值为锚点,使得拓展出的测试数据具有收敛性,可以生成更为准确的测试用例,从而大大节约了功能测试用例的设计时间,提高了功能测试的效率。
下面结合附图对本发明提供的测试用例生成方法及装置进行详细说明。
在具体的实施例中,本申请提供一种测试用例生成方法,所述方法应用于测试用例生成装置,如图1,所述测试用例生成方法包括:
S1:获取一预设需求点思维导图上各子节点的测试需求点数据;
S2:根据每个测试需求点数据以及预设的测试需求点数据与测试用例字段的对应关系,生成测试用例;
其中,所述预设需求点思维导图上各子节点的测试需求点数据基于边界值算法生成,并且每个子节点对应的边界值相同或不同。
本申请提供的一种测试用例生成方法,通过获取一预设需求点思维导图上各子节点的测试需求点数据,然后利用预设的对应关系得到测试用例,测试需求点数据是基于边界值算法生成,从而可以以边界值为锚点,使得拓展出的测试数据具有收敛性,可以生成更为准确的测试用例,从而大大节约了功能测试用例的设计时间,提高了功能测试的效率。
本发明可以在线或离线建立所述测试用例的对应关系,优选的实施例中,本发明的方法步骤还包括:建立测试需求点数据与测试用例字段的对应关系表。
在优选的实施例中,针对所述预设需求点思维导图上的每个子节点,如图2所示,步骤S1具体包括:
S11:向该子节点导入边界输入参数,所述边界输入参数包括边界值类型和边界条件;
S12:根据边界值类型将一同类型的输入值输入到该子节点,基于所述边界条件和预设的生成规则生成预期数据,并将所述输入值与所述预期数据作为该子节点的所述测试需求点数据。
思维导图中每个子节点上包括有测试需求点数据,具体而言,通过向每个子节点导入边界输入参数,进而生成预期数据,可以理解各子节点各自存在一对应的边界值,并且每个子节点对应的边界值相同或不同,也即每个子节点之间的边界值互相独立不关联。
在优选的实施例中,所述输入值类型为数字,所述边界值包括左边界值和右边界值,所述边界条件包括大于等于左边界值或者是小于等于边界值,如图3所示,该实施例中步骤S12具体包括:
S1211:结合所述左边界值和右边界值,判断所述输入值是否满足所述边界条件,若满足,则基于所述边界条件对所述输入值进行减值处理或者增值处理,以逼近其中一个边界值;
S1212:将减值处理或者增值处理后的输入值和提交成功的预期结果共同作为所述预期数据。
具体的,举例而言,输入值为123:
当条件为右边界值,包含条件为是,此时生成值为123,预期结果为“提交成功系统无报错”。
当条件为小于右边界值,包含条件为否,此时生成值为122,预期结果为“提交成功系统无报错”。
当条件为大于右边界值,包含条件为否,此时生成值为124,预期结果为“提交失败或系统提示合理错误信息”。
当条件为左边界值,包含条件为是,此时生成值为123,预期结果为“提交成功系统无报错”。
当条件为小于左边界值,包含条件为否,此时生成值为122,预期结果为“提交失败或系统提示合理错误信息”。
当条件为大于左边界值,包含条件为否,此时生成值为124,预期结果为“提交成功系统无报错”。
可以看出,本申请基于边界值算法,通过边界值算法中的边界比对步骤,一方面能够自动产生测试需求点数据,另一方面,能够通过不断逼近其中一个边界值的操作来不断得到多个测试需求点数据,从而实现了数据爆炸的功能。
进一步的,在本发明实施例中,所述输入值类型为日期,所述边界值包括左边界日期和右边界日期,所述边界条件包括处于所述左边界日期和有边界日期限定的时间段内;本实施例中,如图4所示,步骤S12具体包括:
S1221:结合所述左边界日期和右边界日期,判断所述输入值是否满足所述边界条件,若满足,则基于所述边界条件对所述输入值进行减时差处理或者增时差处理,以逼近其中一个边界日期;
S1222:将减时差处理或者增时差处理后的输入值和提交成功的预期结果共同作为所述预期数据。
具体的,举例而言,输入值为2000年11月11日:
当条件为右边界值,包含条件为是,此时生成值为2000年11月11日,预期结果为“提交成功系统无报错”。
当条件为小于右边界值,包含条件为否,此时生成值为2000年11月10日,预期结果为“提交成功系统无报错”。
当条件为大于右边界值,包含条件为否,此时生成值为2000年11月12日,预期结果为“提交失败或系统提示合理错误信息”。
当条件为左边界值,包含条件为是,此时生成值为2000年11月11日,预期结果为“提交成功系统无报错”。
当条件为小于左边界值,包含条件为否,此时生成值为2000年11月10日,预期结果为“提交失败或系统提示合理错误信息”。
当条件为大于左边界值,包含条件为否,此时生成值为2000年11月12日,预期结果为“提交成功系统无报错”。
进一步的,在优选的实施例中,所述输入值类型为字符串,所述边界值包括第一字符长度值和第二字符长度值,所述第一字符长度值小于所述第二字符长度值,所述边界条件包括大于等于所述第二字符长度值或者小于等于所述第一字符长度值,如图5所示,该实施例中步骤S12具体包括:
S1231:结合所述第一字符长度值和第二字符长度值,判断所述输入值是否满足所述边界条件,若满足,则基于所述边界条件对所述输入值进行减值处理或者增值处理,以逼近其中一个边界值;
S1232:将减值处理或者增值处理后的输入值和提交成功的预期结果共同作为所述预期数据。
具体的,举例而言,输入值为字符长度值为20(单位比特位):
当条件为第二字符长度值,包含条件为是,此时生成值为20,预期结果为“提交成功系统无报错”。
当条件为小于第二字符长度值,包含条件为否,此时生成值为19,预期结果为“提交成功系统无报错”。
当条件为大于第二字符长度值,包含条件为否,此时生成值为21,预期结果为“提交失败或系统提示合理错误信息”。
当条件为第一字符长度值,包含条件为是,此时生成值为20,预期结果为“提交成功系统无报错”。
当条件为小于第一字符长度值,包含条件为否,此时生成值为19,预期结果为“提交失败或系统提示合理错误信息”。
当条件为大于第一字符长度值,包含条件为否,此时生成值为21,预期结果为“提交成功系统无报错”。
可以看出,本发明的实施例可以采用数字、日期以及字符串作为输入值,进而大大提高了边界值的数据多样性和扩展性。
此外,本发明采用减值处理或者增值处理后输入值和预期结果作为预期数据,进而可以逼近边界值,进而避免了通过头脑爆炸出的测试数据随机性较强、数据不具备收敛性,导致测试数据的测试效果较低的问题。
进一步的,本发明实施例中,针对每个子节点上对应的测试需求点数据,如图6所示,步骤S2具体包括:
S21:根据对应子节点的数据结构确定所述测试需求点数据中各子数据的属性;所述对应关系包括每个子数据属性与测试用例字段的映射关系;
S22:根据每个子数据的属性,结合对应子数据属性的映射关系,确定测试用例字段;
S23:组合所述测试用例字段,形成所述测试用例。
本实施例中,通过各子节点的属性与测试用例的映射关系可以得到测试用例的“模板”,进而形成映射,之后组合字段形成测试用例,将子数据作为该字段的字段值,进而可以生成测试用例。
举例而言,本实施例中,各子数据的属性包括类型、名称、描述等,其可以对应相应字段如module、outcome、test_point_name等,对此做关联映射并保存入表,以此类推全部遍历解析完所有的xmind中的节点信息并保存到表中,最后对表中所有解析的测试需求点信息数据进行查询。
此外,本申请可以包括展示界面,解析后的内容通过列表的形式在测试点列表页面展示,接着根据测试需求点和用例管理中定义的用例信息,通过映射关系将测试点生成对应的测试用例保存到数据库中,最后通过用例管理列表将库中的用例进行展示。
其关联的具体过程如下:对于一展示界面,当点击测试列表中的生成测试用例功能时会触发自动生成逻辑,按照上述的映射关系将测试需求点中的相关数据如用例类型、测试点、期望结果、预期结果等数据映射到测试用例表字段中如case_type、module等表字段,并对其它的相应字段做默认值处理,最后进行入库保存处理,此时即可将一条测试需求点映射成一条测试用例数据。
请结合图7至图9所示是根据公司金融项目功能测试的测试需求点设计的xmind模板结构,然后将此模板集成到测试平台中,其中根节点是在平台中创建的被测项目的一级模块,以此模块为节点可以继续分解创建下一级的模块/需求/用户故事,中间分解的子功能模块节点不受限制,在最后的叶子节点中的结构中定义了固定的关键字如测试点、前置条件、用例类型、步骤描述、预期结果,此固定的关键字是按照待生成的测试用例的数据结构定义的,为后面的测试用例生成做映射准备,最后测试人员定义好测试需求点以后点击xmind上的保存功能,此时测试平台会从根节点开始逐一解析xmind各个节点直到最后的叶子节点,在解析叶子节点时会根据叶子节点定义的关键字一一解析并填充测试需求点数据结构定义的相应字段,将xmind上的测试需求点转换成测试需求点列表存到数据库中,然后通过页面的形式展示出所有已解析的测试需求点列表。而测试需求点列表的数据结构和测试用例的数据结构已建立了映射关系,此时可进行测试需求点到测试用例的自动生成。当测试需求点发生变更时,测试人员在xmind进行相应的修改变更以后再次点击保存即可进行测试需求点信息的更新,并同步更新到测试用例。
可以看出,本发明通过获取一预设需求点思维导图上各子节点的测试需求点数据,然后利用预设的对应关系得到测试用例,测试需求点数据是基于边界值算法生成,从而可以以边界值为锚点,使得拓展出的测试数据具有收敛性,可以生成更为准确的测试用例,从而大大节约了功能测试用例的设计时间,提高了功能测试的效率。
从软件层面来说,本申请提供一种用于执行所述测试用例生成方法中全部或部分内容的测试用例生成装置的实施例,参见图10,所述测试用例生成装置具体包含有如下内容:
获取模块1,获取一预设需求点思维导图上各子节点的测试需求点数据;
生成模块2,根据每个测试需求点数据以及预设的测试需求点数据与测试用例字段的对应关系,生成测试用例;
其中,所述预设需求点思维导图上各子节点的测试需求点数据基于边界值算法生成,并且每个子节点对应的边界值相同或不同。
本申请提供的一种测试用例生成装置,通过获取一预设需求点思维导图上各子节点的测试需求点数据,然后利用预设的对应关系得到测试用例,测试需求点数据是基于边界值算法生成,从而可以以边界值为锚点,使得拓展出的测试数据具有收敛性,可以生成更为准确的测试用例,从而大大节约了功能测试用例的设计时间,提高了功能测试的效率。
本发明可以在线或离线建立所述测试用例的对应关系,优选的实施例中,本发明的方法步骤还包括:建立测试需求点数据与测试用例字段的对应关系表。
在优选的实施例中,如图11所示,还包括:
输入模块01,向该子节点导入边界输入参数,所述边界输入参数包括边界值类型和边界条件;
预期数据生成模块02,根据边界值类型将一同类型的输入值输入到该子节点,基于所述边界条件和预设的生成规则生成预期数据,并将所述输入值与所述预期数据作为该子节点的所述测试需求点数据。
正如上述方法实施例所示,思维导图中每个子节点上包括有测试需求点数据,具体而言,通过向每个子节点导入边界输入参数,进而生成预期数据,可以理解各子节点各自存在一对应的边界值,并且每个子节点对应的边界值相同或不同,也即每个子节点之间的边界值互相独立不关联。
在优选的实施例中,所述输入值类型为数字,所述边界值包括左边界值和右边界值,所述边界条件包括大于等于左边界值或者是小于等于边界值,所述预期数据生成模块,包括:
判断单元,结合所述左边界值和右边界值,判断所述输入值是否满足所述边界条件,若满足,则基于所述边界条件对所述输入值进行减值处理或者增值处理,以逼近其中一个边界值;
预期数据生成单元,将减值处理或者增值处理后的输入值和提交成功的预期结果共同作为所述预期数据。
可以看出,本申请基于边界值算法,通过边界值算法中的边界比对步骤,一方面能够自动产生测试需求点数据,另一方面,能够通过不断逼近其中一个边界值的操作来不断得到多个测试需求点数据,从而实现了数据爆炸的功能。
在优选的实施例中,所述输入值类型为日期,所述边界值包括左边界日期和右边界日期,所述边界条件包括处于所述左边界日期和有边界日期限定的时间段内;所述预期数据生成模块,包括:
判断单元,结合所述左边界日期和右边界日期,判断所述输入值是否满足所述边界条件,若满足,则基于所述边界条件对所述输入值进行减时差处理或者增时差处理,以逼近其中一个边界日期;
预期数据生成单元,将减时差处理或者增时差处理后的输入值和提交成功的预期结果共同作为所述预期数据。
在优选的实施例中,所述输入值类型为字符串,所述边界值包括具有预设比特位的连续字符,所述边界条件包括是否与所述连续字符不同,所述预期数据生成模块,包括:
判断单元,结合连续字符,判断所述输入值是否满足所述边界条件,若满足,则基于所述边界条件对所述输入值进行减值处理或者增值处理,以逼近其中一个边界值;
预期数据生成单元,将减值处理或者增值处理后的输入值和提交成功的预期结果共同作为所述预期数据。
可以看出,本发明的实施例可以采用数字、日期以及字符串作为输入值,进而大大提高了边界值的数据多样性和扩展性。
在优选的实施例中,针对每个子节点上对应的测试需求点数据,所述生成模块包括:
属性确定单元,根据对应子节点的数据结构确定所述测试需求点数据中各子数据的属性;所述对应关系包括每个子数据属性与测试用例字段的映射关系;
测试用例字段确定单元,根据每个子数据的属性,结合对应子数据属性的映射关系,确定测试用例字段;
测试用例生成单元,组合所述测试用例字段,形成所述测试用例。
在优选的实施例中,还包括:
对应关系表建立模块,建立测试需求点数据与测试用例字段的对应关系表。
从硬件层面来说,本申请提供一种用于实现测试用例生成方法中的全部或部分内容的电子设备的实施例,所述电子设备具体包含有如下内容:
图12为本申请实施例的电子设备9600的系统构成的示意框图。如图12所示,该电子设备9600可以包括中央处理器9100和存储器9140;存储器9140耦合到中央处理器9100。值得注意的是,该图12是示例性的;还可以使用其他类型的结构,来补充或代替该结构,以实现电信功能或其他功能。
在一实施例中,测试用例生成方法功能可以被集成到中央处理器中。其中,中央处理器可以被配置为进行如下控制:
S1:获取一预设需求点思维导图上各子节点的测试需求点数据;
S2:根据每个测试需求点数据以及预设的测试需求点数据与测试用例字段的对应关系,生成测试用例;
其中,所述预设需求点思维导图上各子节点的测试需求点数据基于边界值算法生成,并且每个子节点对应的边界值相同或不同。
从上述描述可知,本申请实施例提供的电子设备,可以使得用户可以全自动化实现批量的测试用例生成,并且自动整理扫描结果,同时工具可以自动对环境进行清理对容器影响较低,很好的解决了现有工具自动化程度较差,无法覆盖所有攻击的问题,提高了整个测试用例生成流程的效率。
在另一个实施方式中,测试用例生成装置和流量录制管理装置可以与中央处理器9100分开配置,例如可以将测试用例生成装置配置为与中央处理器9100连接的芯片,通过中央处理器的控制来实现测试用例生成方法功能。
如图12所示,该电子设备9600还可以包括:通信模块9110、输入单元9120、音频处理器9130、显示器9160、电源9170。值得注意的是,电子设备9600也并不是必须要包括图12中所示的所有部件;此外,电子设备9600还可以包括图12中没有示出的部件,可以参考现有技术。
如图12所示,中央处理器9100有时也称为控制器或操作控件,可以包括微处理器或其他处理器装置和/或逻辑装置,该中央处理器9100接收输入并控制电子设备9600的各个部件的操作。
其中,存储器9140,例如可以是缓存器、闪存、硬驱、可移动介质、易失性存储器、非易失性存储器或其它合适装置中的一种或更多种。可储存上述与失败有关的信息,此外还可存储执行有关信息的程序。并且中央处理器9100可执行该存储器9140存储的该程序,以实现信息存储或处理等。
输入单元9120向中央处理器9100提供输入。该输入单元9120例如为按键或触摸输入装置。电源9170用于向电子设备9600提供电力。显示器9160用于进行图像和文字等显示对象的显示。该显示器例如可为LCD显示器,但并不限于此。
该存储器9140可以是固态存储器,例如,只读存储器(ROM)、随机存取存储器(RAM)、SIM卡等。还可以是这样的存储器,其即使在断电时也保存信息,可被选择性地擦除且设有更多数据,该存储器的示例有时被称为EPROM等。存储器9140还可以是某种其它类型的装置。存储器9140包括缓冲存储器9141(有时被称为缓冲器)。存储器9140可以包括应用/功能存储部9142,该应用/功能存储部9142用于存储应用程序和功能程序或用于通过中央处理器9100执行电子设备9600的操作的流程。
存储器9140还可以包括数据存储部9143,该数据存储部9143用于存储数据,例如联系人、数字数据、图片、声音和/或任何其他由电子设备使用的数据。存储器9140的驱动程序存储部9144可以包括电子设备的用于通信功能和/或用于执行电子设备的其他功能(如消息传送应用、通讯录应用等)的各种驱动程序。
通信模块9110即为经由天线9111发送和接收信号的发送机/接收机9110。通信模块(发送机/接收机)9110耦合到中央处理器9100,以提供输入信号和接收输出信号,这可以和常规移动通信终端的情况相同。
基于不同的通信技术,在同一电子设备中,可以设置有多个通信模块9110,如蜂窝网络模块、蓝牙模块和/或无线局域网模块等。通信模块(发送机/接收机)9110还经由音频处理器9130耦合到扬声器9131和麦克风9132,以经由扬声器9131提供音频输出,并接收来自麦克风9132的音频输入,从而实现通常的电信功能。音频处理器9130可以包括任何合适的缓冲器、解码器、放大器等。另外,音频处理器9130还耦合到中央处理器9100,从而使得可以通过麦克风9132能够在本机上录音,且使得可以通过扬声器9131来播放本机上存储的声音。
本申请的实施例还提供能够实现上述实施例中的测试用例生成方法中全部步骤的一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述实施例中的执行主体为服务器或客户端的测试用例生成方法的全部步骤,例如,所述处理器执行所述计算机程序时实现下述步骤:
S1:获取一预设需求点思维导图上各子节点的测试需求点数据;
S2:根据每个测试需求点数据以及预设的测试需求点数据与测试用例字段的对应关系,生成测试用例;
其中,所述预设需求点思维导图上各子节点的测试需求点数据基于边界值算法生成,并且每个子节点对应的边界值相同或不同。
从上述描述可知,本申请实施例提供的计算机可读存储介质,可以使得用户可以全自动化实现批量的测试用例生成,并且自动整理扫描结果,同时工具可以自动对环境进行清理对容器影响较低,很好的解决了现有工具自动化程度较差,无法覆盖所有攻击的问题,提高了整个测试用例生成流程的效率。
本领域内的技术人员应明白,本发明的实施例可提供为方法、装置、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(装置)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
本发明中应用了具体实施例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (10)
1.一种测试用例生成方法,其特征在于,所述测试用例生成方法包括:
获取一预设需求点思维导图上各子节点的测试需求点数据;
根据每个测试需求点数据以及预设的测试需求点数据与测试用例字段的对应关系,生成测试用例;
其中,所述预设需求点思维导图上各子节点的测试需求点数据基于边界值算法生成,并且每个子节点对应的边界值相同或不同。
2.根据权利要求1所述的一种测试用例生成方法,其特征在于,针对所述预设需求点思维导图上的每个子节点,基于边界值算法生成所述预设需求点思维导图上各子节点的测试需求点数据,包括:
向该子节点导入边界输入参数,所述边界输入参数包括边界值类型和边界条件;
根据边界值类型将一同类型的输入值输入到该子节点,基于所述边界条件和预设的生成规则生成预期数据,并将所述输入值与所述预期数据作为该子节点的所述测试需求点数据。
3.根据权利要求2所述的一种测试用例生成方法,其特征在于,所述输入值类型为数字,所述边界值包括左边界值和右边界值,所述边界条件包括大于等于左边界值或者是小于等于边界值,所述基于所述边界条件和预设的生成规则生成预期数据,包括:
结合所述左边界值和右边界值,判断所述输入值是否满足所述边界条件,若满足,则基于所述边界条件对所述输入值进行减值处理或者增值处理,以逼近其中一个边界值;
将减值处理或者增值处理后的输入值和提交成功的预期结果共同作为所述预期数据。
4.根据权利要求2所述的一种测试用例生成方法,其特征在于,所述输入值类型为日期,所述边界值包括左边界日期和右边界日期,所述边界条件包括处于所述左边界日期和有边界日期限定的时间段内;所述基于所述边界条件和预设的生成规则生成预期数据,包括:
结合所述左边界日期和右边界日期,判断所述输入值是否满足所述边界条件,若满足,则基于所述边界条件对所述输入值进行减时差处理或者增时差处理,以逼近其中一个边界日期;
将减时差处理或者增时差处理后的输入值和提交成功的预期结果共同作为所述预期数据。
5.根据权利要求2所述的一种测试用例生成方法,其特征在于,所述输入值类型为字符串,所述边界值包括第一字符长度值和第二字符长度值,所述第一字符长度值小于所述第二字符长度值,所述边界条件包括大于等于所述第二字符长度值或者小于等于所述第一字符长度值,所述基于所述边界条件和预设的生成规则生成预期数据,包括:
结合所述第一字符长度值和第二字符长度值,判断所述输入值是否满足所述边界条件,若满足,则基于所述边界条件对所述输入值进行减值处理或者增值处理,以逼近其中一个边界值;
将减值处理或者增值处理后的输入值和提交成功的预期结果共同作为所述预期数据。
6.根据权利要求2所述的一种测试用例生成方法,其特征在于,针对每个子节点上对应的测试需求点数据,所述根据每个测试需求点数据以及预设的测试需求点数据与测试用例字段的对应关系,生成测试用例,包括:
根据对应子节点的数据结构确定所述测试需求点数据中各子数据的属性;所述对应关系包括每个子数据属性与测试用例字段的映射关系;
根据每个子数据的属性,结合对应子数据属性的映射关系,确定测试用例字段;
组合所述测试用例字段,形成所述测试用例。
7.根据权利要求1所述的一种测试用例生成方法,其特征在于,还包括:
建立测试需求点数据与测试用例字段的对应关系表。
8.一种测试用例生成装置,其特征在于,所述测试用例生成装置包括:
获取模块,获取一预设需求点思维导图上各子节点的测试需求点数据;
生成模块,根据每个测试需求点数据以及预设的测试需求点数据与测试用例字段的对应关系,生成测试用例;
其中,所述预设需求点思维导图上各子节点的测试需求点数据基于边界值算法生成,并且每个子节点对应的边界值相同或不同。
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至7任一项所述的测试用例生成方法。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时实现权利要求1至7任一项所述的测试用例生成方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210152124.6A CN114510425A (zh) | 2022-02-18 | 2022-02-18 | 一种测试用例生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210152124.6A CN114510425A (zh) | 2022-02-18 | 2022-02-18 | 一种测试用例生成方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114510425A true CN114510425A (zh) | 2022-05-17 |
Family
ID=81552055
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210152124.6A Pending CN114510425A (zh) | 2022-02-18 | 2022-02-18 | 一种测试用例生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114510425A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117130946A (zh) * | 2023-10-27 | 2023-11-28 | 北京世冠金洋科技发展有限公司 | 一种测试场景生成方法、装置、电子设备和可读存储介质 |
CN117632771A (zh) * | 2024-01-24 | 2024-03-01 | 苏州元脑智能科技有限公司 | 一种测试用例实时生成的方法、装置、设备及介质 |
CN118193402A (zh) * | 2024-05-15 | 2024-06-14 | 深圳华云信息系统科技股份有限公司 | 测试用例生成方法、系统、电子设备及存储介质 |
-
2022
- 2022-02-18 CN CN202210152124.6A patent/CN114510425A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117130946A (zh) * | 2023-10-27 | 2023-11-28 | 北京世冠金洋科技发展有限公司 | 一种测试场景生成方法、装置、电子设备和可读存储介质 |
CN117130946B (zh) * | 2023-10-27 | 2024-01-26 | 北京世冠金洋科技发展有限公司 | 一种测试场景生成方法、装置、电子设备和可读存储介质 |
CN117632771A (zh) * | 2024-01-24 | 2024-03-01 | 苏州元脑智能科技有限公司 | 一种测试用例实时生成的方法、装置、设备及介质 |
CN117632771B (zh) * | 2024-01-24 | 2024-04-12 | 苏州元脑智能科技有限公司 | 一种测试用例实时生成的方法、装置、设备及介质 |
CN118193402A (zh) * | 2024-05-15 | 2024-06-14 | 深圳华云信息系统科技股份有限公司 | 测试用例生成方法、系统、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114510425A (zh) | 一种测试用例生成方法及装置 | |
CN111506444A (zh) | 表单的审批方法、装置、存储介质及电子设备 | |
CN110956956A (zh) | 基于策略规则的语音识别方法及装置 | |
CN111949522B (zh) | 用户界面自动化测试方法及装置 | |
CN105373478B (zh) | 自动化测试方法和系统 | |
CN114138372B (zh) | 前端组件加载方法及装置 | |
CN109542780B (zh) | 自然语言处理应用的测试方法、测试设备及存储介质 | |
CN109614325A (zh) | 一种确定控件属性的方法及装置、电子设备和存储介质 | |
CN109992652B (zh) | 一种信息回复方法、装置、设备及存储介质 | |
CN112860264B (zh) | 一种抽象语法树重构方法及装置 | |
CN112860585B (zh) | 一种测试脚本断言生成方法及装置 | |
CN117828079A (zh) | 基于大语言模型的知识传承实现方法及装置、存储介质 | |
CN111309882B (zh) | 用于实现智能客服问答的方法和装置 | |
CN112905461A (zh) | 自动化接口测试案例执行方法及装置 | |
CN109951859A (zh) | 无线网络连接推荐方法、装置、电子设备及可读介质 | |
CN115062571A (zh) | 应用于集成电路器件的数据区域动态选取方法、系统、设备和计算机可读存储介质 | |
CN111726285B (zh) | 即时通信方法及装置 | |
CN113760962A (zh) | 单领域至跨领域数据集数据处理方法及装置 | |
CN113076262A (zh) | 网页自动化测试方法及装置 | |
CN110931014A (zh) | 基于正则匹配规则的语音识别方法及装置 | |
CN112925564B (zh) | 一种源代码的冗余导入类清理方法及装置 | |
CN116050939B (zh) | 基于互动小说的用户测评方法及相关装置 | |
CN110955451B (zh) | 联机接口的变更方法及装置 | |
CN113704133A (zh) | 一种接口测试的组织方法、系统及计算机设备 | |
CN115270672A (zh) | 一种tcam封装模块的验证方法、装置、设备及存储介质 |
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 |