掌桥专利:专业的专利平台
掌桥专利
首页

测试案例生成方法、装置、终端设备以及存储介质

文献发布时间:2024-04-18 19:58:21


测试案例生成方法、装置、终端设备以及存储介质

技术领域

本发明涉及测试技术领域,尤其涉及一种测试案例生成方法、装置、终端设备以及存储介质。

背景技术

在承接某个系统或某个功能的测试任务时,需要在测试前期与需求方、技术方沟通并编写具体的测试案例。常规的编写测试案例的方式是结合业务需求、技术方案先编写测试要点,测试要点可以理解为测试场景,是相对粗略的维度的内容,因此需要在编写好的测试要点的基础上,再人工细化编写为具体的测试案例,测试案例即为测试执行人员对照着实际去验证的内容。细化案例时,需要遵守测试案例的编写规范,需要编写测试案例导入平台的路径、测试案例名称、测试案例描述、测试案例前置条件、测试案例优先级、测试案例预期结果、测试案例设计人。

在构思及实现本申请过程中,发明人发现至少存在如下问题:在人工编写好测试要点的情况下,再由人工编写测试案例,这种方式存在重复投入、时间成本偏高的问题,容易导致进入测试执行阶段的时间延误,从而对测试效率造成影响。

上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。

发明内容

本发明的主要目的在于提供一种测试案例生成方法、装置、终端设备以及存储介质,旨在提高测试效率。

为实现上述目的,本发明提供一种测试案例生成方法,所述测试案例生成方法包括:

获取待测试软件对应的测试要点;

基于预设的测试案例生成器,对所述测试要点进行处理,生成所述待测试软件对应的目标测试案例。

可选地,所述获取待测试软件对应的测试要点的步骤包括:

获取所述待测试软件的测试需求信息;

基于预设的测试要点编写模板,根据所述测试需求信息生成所述测试要点。

可选地,所述基于预设的测试案例生成器,对所述测试要点进行处理,生成所述待测试软件对应的目标测试案例的步骤之前还包括:

获取所述测试要点的路径及文档名称;

获取待生成的测试案例的路径及文档名称;

基于所述测试要点的路径及文档名称与待生成的测试案例的路径及文档名称启动所述测试案例生成器。

可选地,所述基于预设的测试案例生成器,对所述测试要点进行处理,生成所述待测试软件对应的目标测试案例的步骤包括:

通过所述测试案例生成器加载所述测试要点对应的测试要点文件;

递归获取所述测试要点文件中的测试主题节点信息列表;

分别构建所述测试主题节点信息列表中的各测试主题节点对应的目标测试案例。

可选地,所述分别构建所述测试主题节点信息列表中的各测试主题节点对应的目标测试案例的步骤包括:

从所述各测试主题节点中选取存在对应的测试场景的至少一目标测试主题节点;

将所述目标测试主题节点对应的测试场景名作为对应的案例名;

获取所述目标测试主题节点的场景相邻节点的预期值信息、测试描述信息以及优先级信息中的至少一项;

根据所述案例名、预期值信息、测试描述信息以及优先级信息中的至少一项构建所述目标测试主题节点对应的目标测试案例。

可选地,所述根据所述预期值信息、测试描述信息以及优先级信息中的至少一项构建所述目标测试主题节点对应的目标测试案例的步骤包括:

判断所述目标测试主题节点是否存在对应的备注信息;

若所述目标测试主题节点存在对应的备注信息,则匹配所述备注信息中的预期结果;

采用所述预期结果替换所述预期值信息中的内容,得到目标预期值信息;

根据所述目标预期值信息,结合所述案例名、测试描述信息以及优先级信息中的至少一项构建所述目标测试主题节点对应的目标测试案例。

可选地,所述根据所述目标预期值信息,结合所述案例名、测试描述信息以及优先级信息中的至少一项构建所述目标测试主题节点对应的目标测试案例的步骤之后还包括:

获取预设表格模板;

对所述预设表格模板进行格式化,得到目标表格模板;

将所述目标测试案例输出到所述目标表格模板中,得到所述待测试软件的测试案例对象文件。

此外,为实现上述目的,本发明还提供一种测试案例生成装置,所述测试案例生成装置包括:

获取模块,用于获取待测试软件对应的测试要点;

生成模块,用于基于预设的测试案例生成器,对所述测试要点进行处理,生成所述待测试软件对应的目标测试案例。

此外,为实现上述目的,本发明还提供一种终端设备,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的测试案例生成程序,所述测试案例生成程序被所述处理器执行时实现如上所述的测试案例生成方法的步骤。

此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有测试案例生成程序,所述测试案例生成程序被处理器执行时实现如上所述的测试案例生成方法的步骤。

本发明实施例提出的一种测试案例生成方法、装置、终端设备以及存储介质,通过获取待测试软件对应的测试要点;基于预设的测试案例生成器,对所述测试要点进行处理,生成所述待测试软件对应的目标测试案例,无需人工逐条编写测试案例,降低时间成本,加速测试案例的产出,从而提高测试效率。

附图说明

图1为本发明测试案例生成装置所属终端设备的功能模块示意图;

图2为本发明测试案例生成方法一示例性实施例的流程示意图;

图3为图2实施例中步骤S20的具体流程示意图;

图4为本发明实施例中的案例对象构建流程示意图;

图5为本发明实施例中的整体流程示意图。

本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。

具体实施方式

应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

本发明实施例的主要解决方案是:通过获取待测试软件对应的测试要点;基于预设的测试案例生成器,对所述测试要点进行处理,生成所述待测试软件对应的目标测试案例,无需人工逐条编写测试案例,降低时间成本,加速测试案例的产出,从而提高测试效率。

在承接某个系统或某个功能的测试任务时,需要在测试前期与需求方、技术方沟通并编写具体的测试案例。常规的编写测试案例的方式是结合业务需求、技术方案先编写测试要点,测试要点可以理解为测试场景,是相对粗略的维度的内容,例如测试要点为‘测试客户正常登录’,然后在编写好的测试要点的基础上,再人工细化编写为具体的测试案例,测试案例即为测试执行人员对照着实际去验证的内容,例如上述‘测试登录功能’,人工编写测试案例时,测试案例可能会细化扩展为:

案例1:客户在本人手机上登录,录入密码正确,正常登录界面正常跳转,客户状态为登录状态;

案例2:客户在他人手机上登录,录入密码正确,正常登录界面正常跳转,客户状态为登录状态;

案例3:客户在手机上登录,首次录入密码错误的情况下再次录入密码,密码正确,正常登录界面正常跳转,客户状态为登录状态。

细化案例时,需要遵守测试案例的编写规范,需要编写测试案例导入平台的路径、测试案例名称、测试案例描述、测试案例前置条件、测试案例优先级、测试案例预期结果、测试案例设计人。在细化测试案例时,不管通过测试要点编写的测试案例之间是否存在某种规律,均需要人工逐条编写,过程繁琐且存在重复投入的现象

综上,可以看出,在人工编写好测试要点的情况下,再由人工编写测试案例,这种方式存在重复投入、时间成本偏高的问题,并且在时间紧急时,暴露出测试设计无法快速完成进入测试执行阶段的问题。

本发明提供一种解决方案,由于测试要点与测试案例之间,是存在一定的规律的,比如说同一类测试要点,测试前置条件类似、测试预期结果相同等,在这些规律的基础上,在已编写测试要点的基础上,可以采用本发明实施例中提供的测试案例生成方法解决人工编写测试案例的投入,快速生成对应的测试案例。

具体地,参照图1,图1为本发明测试案例生成装置所属终端设备的功能模块示意图。该测试案例生成装置可以为独立于终端设备的、能够进行测试案例生成的装置,其可以通过硬件或软件的形式承载于终端设备上。该终端设备可以为手机、平板电脑等具有数据处理功能的智能移动终端,还可以为具有数据处理功能的固定终端设备或服务器等。

在本实施例中,该测试案例生成装置所属终端设备至少包括输出模块110、处理器120、存储器130以及通信模块140。

存储器130中存储有操作系统以及测试案例生成程序,测试案例生成装置可以将获取的待测试软件对应的测试要点,以及基于预设的测试案例生成器,对所述测试要点进行处理,生成的所述待测试软件对应的目标测试案例等信息存储于该存储器130中;输出模块110可为显示屏等。通信模块140可以包括WIFI模块、移动通信模块以及蓝牙模块等,通过通信模块140与外部设备或服务器进行通信。

其中,存储器130中的测试案例生成程序被处理器执行时实现以下步骤:

获取待测试软件对应的测试要点;

基于预设的测试案例生成器,对所述测试要点进行处理,生成所述待测试软件对应的目标测试案例。

进一步地,存储器130中的测试案例生成程序被处理器执行时还实现以下步骤:

获取所述待测试软件的测试需求信息;

基于预设的测试要点编写模板,根据所述测试需求信息生成所述测试要点。

进一步地,存储器130中的测试案例生成程序被处理器执行时还实现以下步骤:

获取所述测试要点的路径及文档名称;

获取待生成的测试案例的路径及文档名称;

基于所述测试要点的路径及文档名称与待生成的测试案例的路径及文档名称启动所述测试案例生成器。

进一步地,存储器130中的测试案例生成程序被处理器执行时还实现以下步骤:

通过所述测试案例生成器加载所述测试要点对应的测试要点文件;

递归获取所述测试要点文件中的测试主题节点信息列表;

分别构建所述测试主题节点信息列表中的各测试主题节点对应的目标测试案例。

进一步地,存储器130中的测试案例生成程序被处理器执行时还实现以下步骤:

从所述各测试主题节点中选取存在对应的测试场景的至少一目标测试主题节点;

将所述目标测试主题节点对应的测试场景名作为对应的案例名;

获取所述目标测试主题节点的场景相邻节点的预期值信息、测试描述信息以及优先级信息中的至少一项;

根据所述案例名、预期值信息、测试描述信息以及优先级信息中的至少一项构建所述目标测试主题节点对应的目标测试案例。

进一步地,存储器130中的测试案例生成程序被处理器执行时还实现以下步骤:

判断所述目标测试主题节点是否存在对应的备注信息;

若所述目标测试主题节点存在对应的备注信息,则匹配所述备注信息中的预期结果;

采用所述预期结果替换所述预期值信息中的内容,得到目标预期值信息;

根据所述目标预期值信息,结合所述案例名、测试描述信息以及优先级信息中的至少一项构建所述目标测试主题节点对应的目标测试案例。

进一步地,存储器130中的测试案例生成程序被处理器执行时还实现以下步骤:

获取预设表格模板;

对所述预设表格模板进行格式化,得到目标表格模板;

将所述目标测试案例输出到所述目标表格模板中,得到所述待测试软件的测试案例对象文件。

本实施例通过上述方案,具体通过获取待测试软件对应的测试要点;基于预设的测试案例生成器,对所述测试要点进行处理,生成所述待测试软件对应的目标测试案例,无需人工逐条编写测试案例,降低时间成本,加速测试案例的产出,从而提高测试效率。

基于上述终端设备架构但不限于上述架构,提出本发明方法实施例。

本实施例方法的执行主体可以为一种测试案例生成装置或终端设备等,本实施例以测试案例生成装置进行举例。

参照图2,图2为本发明测试案例生成方法一示例性实施例的流程示意图。所述测试案例生成方法包括:

步骤S10,获取待测试软件对应的测试要点;

具体地,软件测试是一种系统性的过程,旨在评估和验证软件应用程序的质量、功能、可靠性和性能,其中涉及通过执行软件来发现错误、缺陷和问题,以便在软件发布之前或在生命周期的不同阶段进行修复。

可选地,在生成测试案例之前,需要先确定待测试软件对应的测试要点,具体包括:

获取所述待测试软件的测试需求信息;

基于预设的测试要点编写模板,根据所述测试需求信息生成所述测试要点。

可选地,本发明实施例中提供了一种测试要点编写模板,可以根据待测试软件的测试需求信息生成对应的测试要点,需要说明的是,本发明实施例中的测试要点编写模板支持XMind以及EXCLE等格式,这两种编写模板只存在文档格式不一样的区别,模板的思路与要求相同。本发明实施例中以XMind格式的测试要点编写模板为例进行说明。

步骤S20,基于预设的测试案例生成器,对所述测试要点进行处理,生成所述待测试软件对应的目标测试案例。

进一步地,获取到待测试软件对应的测试要点后,即可基于预设的测试案例生成器,对测试要点进行处理,生成待测试软件对应的目标测试案例。

可选地,所述基于预设的测试案例生成器,对所述测试要点进行处理,生成所述待测试软件对应的目标测试案例的步骤之前还包括:

获取所述测试要点的路径及文档名称;

获取待生成的测试案例的路径及文档名称;

基于所述测试要点的路径及文档名称与待生成的测试案例的路径及文档名称启动所述测试案例生成器。

具体地,测试人员在编写测试要点时,使用本发明实施例中提供的测试要点编写模板,编写完成后,录入测试要点的路径及文档名称,以及指定生成的测试案例的路径及文档名称,运行测试案例生成器,即可自动生成符合相关案例规范要求的测试案例。

例如,具体路径为:项目-测试阶段-被测系统-子系统A-功能A1-功能模块A1-1-功能1…5,则为导入平台的路径,测试案例生成器会自动生成导入平台的路径。

例如“功能1”包括3个案例,不同的测试案例对应不同的预期结果,测试案例生成器会自动生成对应的测试案例与测试案例名称,预期结果分别为测试要点上描述的预期结果,测试前置条件为“功能1”对应的前置条件描述,测试案例描述为“功能1”对应的案例描述,测试案例优先级为“功能1”对应的优先级,测试案例设计人为“员工A”,这些内容均为测试案例生成器在生成测试案例时自动填写补充。

类似地,“功能2”包括3条案例,其中1条测试案例的预期结果与另外2条测试案例的预期结果不一样,测试案例生成器会自动生成对应的测试案例与测试案例名称,第1条案例的预期结果直接取测试要点中该条测试案例对应的预期结果,另外2条测试案例的预期结果取预期结果中的描述,测试前置条件为“功能1”对应的前置条件描述,测试案例描述为“功能1”对应的案例描述,测试案例优先级为“功能1”对应的优先级,测试案例设计人为“员工A”,这些内容均为测试案例生成器在生成测试案例时自动填写补充。

类似地,“功能3”包括3条案例,对应相同的预期结果,测试案例生成器会自动生成对应的测试案例与测试案例名称,预期结果为“功能1”对应的预期结果描述,测试前置条件为“功能1”对应的前置条件描述,测试案例描述为“功能1”对应的案例描述,测试案例优先级为“功能1”对应的优先级,测试案例设计人为“员工A”,这些内容均为测试案例生成器在生成测试案例时自动填写补充。

类似地,“功能4”与“功能5”分别包括3条案例,对应相同的预期结果均相同,测试案例生成器会自动生成对应的测试案例与测试案例名称,预期结果为功能模块A1-1对应的预期结果描述,测试前置条件为功能A1-1对应的前置条件描述,测试案例描述为功能A1-1对应的案例描述,测试案例优先级为功能A1-1对应的优先级,测试案例设计人为“员工A”,这些内容均为测试案例生成器在生成测试案例时自动填写补充。

在使用测试要点模板编写测试要点时,如果要细化的测试案例与其他测试案例有共同点,则可共用无需要分别编写,对应到测试案例时,由测试案例生成器自动补充。

可选地,所述根据所述目标预期值信息,结合所述案例名、测试描述信息以及优先级信息中的至少一项构建所述目标测试主题节点对应的目标测试案例的步骤之后还包括:

获取预设表格模板;

对所述预设表格模板进行格式化,得到目标表格模板;

将所述目标测试案例输出到所述目标表格模板中,得到所述待测试软件的测试案例对象文件。

具体地,本发明实施例中可以通过测试管理平台获取预设表格模板,例如Excel模板,将生成的各个目标测试案例依次输出到Excel模板中,即可得到测试案例对象文件,进一步可用于测试执行阶段。

在本实施例中,通过获取待测试软件对应的测试要点;基于预设的测试案例生成器,对所述测试要点进行处理,生成所述待测试软件对应的目标测试案例,无需人工逐条编写测试案例,降低时间成本,加速测试案例的产出,从而提高测试效率。

参照图3,图3为图2实施例中步骤S20的具体流程示意图。本实施例基于上述图2所示的实施例,在本实施例中,上述S20基于预设的测试案例生成器,对所述测试要点进行处理,生成所述待测试软件对应的目标测试案例的步骤包括:

步骤S201,通过所述测试案例生成器加载所述测试要点对应的测试要点文件;

步骤S202,递归获取所述测试要点文件中的测试主题节点信息列表;

步骤S203,分别构建所述测试主题节点信息列表中的各测试主题节点对应的目标测试案例。

具体地,参照图4,图4为本发明实施例中的案例对象构建流程示意图,如图4所示,测试人员在完成测试分析后,会产出相应格式的XMind文件,测试案例生成器加载测试要点XMind文件,程序会递归获取XMind文件里所有topic信息列表(测试主题节点信息列表)。针对多层级的topic,会通过jsonpath格式展示,最终返回一个不带嵌套的topic信息列表。

可选地,所述分别构建所述测试主题节点信息列表中的各测试主题节点对应的目标测试案例的步骤包括:

从所述各测试主题节点中选取存在对应的测试场景的至少一目标测试主题节点;

将所述目标测试主题节点对应的测试场景名作为对应的案例名;

获取所述目标测试主题节点的场景相邻节点的预期值信息、测试描述信息以及优先级信息中的至少一项;

根据所述案例名、预期值信息、测试描述信息以及优先级信息中的至少一项构建所述目标测试主题节点对应的目标测试案例。

具体地,程序递归处理每个topic信息,构建案例对象。具体判断流程中,首先判断该topic是否有测试案例节点,如果没有说明为非案例场景,可以作忽略处理。如有,则以此获取该节点下的案例名,获取与案例topic相邻节点的预期结果信息、前置条件信息、测试描述信息和优先级信息等,设计人则从topoic对应父节点备注获取,如无,顺序再往上一个层级进行查找直至找到位置。

可选地,所述根据所述预期值信息、测试描述信息以及优先级信息中的至少一项构建所述目标测试主题节点对应的目标测试案例的步骤包括:

判断所述目标测试主题节点是否存在对应的备注信息;

若所述目标测试主题节点存在对应的备注信息,则匹配所述备注信息中的预期结果;

采用所述预期结果替换所述预期值信息中的内容,得到目标预期值信息;

根据所述目标预期值信息,结合所述案例名、测试描述信息以及优先级信息中的至少一项构建所述目标测试主题节点对应的目标测试案例。

具体地,进一步判断具体案例节点是否有备注信息,如有,则匹配备注信息的预期结果文字,匹配成功则表示该具体测试案例有自己的预期结果,会替换该节点的预期结果信息,如无则沿用相邻topic的公共预期结果内容,然后初始化构建完整的案例对象。递归处理完所有的topic后,则对应XMind文件的案例对象列表就构建完整,然后初始化根据符合测试管理平台的导入Excel模板,将案例对象依次输出到Excel文件中,程序执行完毕。

本实施例通过上述方案,具体通过所述测试案例生成器加载所述测试要点对应的测试要点文件;递归获取所述测试要点文件中的测试主题节点信息列表;分别构建所述测试主题节点信息列表中的各测试主题节点对应的目标测试案例,聚焦于分析测试场景,针对类似场景的预期结果、测试描述、优先级都可以用公共节点提炼,特殊情况则在备注里额外添加对应的预期结果,通过该案例生成器直接生成可导入到测试管理平台的Excel文件。比起直接编写Excel文件提高了案例编写效率,同时脑图的编写模式更有助于测试系统性发散性进行测试分析设计,对应XMind文件提高了案例评审效率。

此外,本发明实施例还提出一种测试案例生成装置,所述测试案例生成装置包括:

获取模块,用于获取待测试软件对应的测试要点;

生成模块,用于基于预设的测试案例生成器,对所述测试要点进行处理,生成所述待测试软件对应的目标测试案例。

参照图5,图5为本发明实施例中的整体流程示意图,如图5所示,本发明实施例中提供了测试要点编写模板以及测试案例生成器,测试案例生成器具备智能化生成案例的功能,属于python脚本,可以封装在团队内部python库中,使用者只需要安装对应库即可使用,无需要具备python方面的专业技能。测试人员在编写测试要点时,使用本发明实施例中提供的测试要点编写模板,编写完成后,录入测试要点的路径及文档名称,以及指定生成的测试案例的路径及文档名称,运行测试案例生成器即可自动生成符合相关案例规范要求的测试案例。

在本实施例中,通过聚焦于分析测试场景,针对类似场景的预期结果、测试描述、优先级都可以用公共节点提炼,特殊情况则在备注里额外添加对应的预期结果,通过该案例生成器直接生成可导入到测试管理平台的Excel文件。比起直接编写Excel文件提高了案例编写效率,同时脑图的编写模式更有助于测试系统性发散性进行测试分析设计,对应XMind文件提高了案例评审效率,以便于快速进入测试执行阶段。

本实施例实现测试案例生成的原理及实施过程,请参照上述各实施例,在此不再赘述。

此外,本发明实施例还提出一种终端设备,所述终端设备包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的测试案例生成程序,所述测试案例生成程序被所述处理器执行时实现如上所述的测试案例生成方法的步骤。

由于本测试案例生成程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。

此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有测试案例生成程序,所述测试案例生成程序被处理器执行时实现如上所述的测试案例生成方法的步骤。

由于本测试案例生成程序被处理器执行时,采用了前述所有实施例的全部技术方案,因此至少具有前述所有实施例的全部技术方案所带来的所有有益效果,在此不再一一赘述。

相比现有技术,本发明实施例提出的测试案例生成方法、装置、终端设备以及存储介质,通过获取待测试软件对应的测试要点;基于预设的测试案例生成器,对所述测试要点进行处理,生成所述待测试软件对应的目标测试案例,无需人工逐条编写测试案例,降低时间成本,加速测试案例的产出,从而提高测试效率。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。

上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,被控终端,或者网络设备等)执行本申请每个实施例的方法。

以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

相关技术
  • 一种服务端测试用例集的生成方法、终端设备及存储介质
  • 测试报告的生成方法、计算机可读存储介质及终端设备
  • 综合报告生成方法、装置、终端设备和可读存储介质
  • 一种APP的自动生成方法、装置、终端设备及可读存储介质
  • 定制内衣参数生成的方法、装置、终端设备及存储介质
  • 用户体验测试案例生成方法、装置、设备及存储介质
  • 接口测试案例的生成方法、装置、设备及存储介质
技术分类

06120116480182