测试用例编辑器的使用方法及装置和电子设备与流程

文档序号:18213951发布日期:2019-07-19 22:30阅读:323来源:国知局
测试用例编辑器的使用方法及装置和电子设备与流程

本说明书实施例涉及计算机技术领域,尤其涉及一种测试用例编辑器,以及该编辑器的使用方法、装置和电子设备。



背景技术:

在计算机程序开发及维护过程中,开发人员通常需要进行测试工作。目标主流测试框架采用的通常是数据驱动测试,即代码和测试数据分离,测试执行时从数据文件中读取测试数据,并通过变量出入测试脚本中,这些测试数据即可以作为测试数据的输入,也可以作为输出数据进行验证。

然而,当前数据驱动测试的准备无统一标准,不同被测系统的数据文件承载形式多样,文件内容粒度参差不齐,尤其在中等及以上复杂度的测试场景下,数据文件个数和内容都十分庞大,这使得系统在类定义变更或数据结构变更等场景下,用例数据维护成本十分巨大。

需要一种便于维护测试用例的方案。



技术实现要素:

本说明书实施例提供的一种测试用例编辑器,以及该编辑器的使用方法、装置和电子设备:

根据本说明书实施例的第一方面,提供一种测试用例编辑器,所述编辑器包括可视化用例编辑界面;

所述可视化用例编辑界面展示有被测对象的测试用例;

所述测试用例由用户定义的操作对象、操作类型和数据持久化模型构成;其中,所述操作对象包括测试准备数据;所述操作类型为可供用户选择的编辑该测试用例的类型;所述数据持久化模型包含所述测试用例的测试脚本和数据存储文件;该测试脚本用于承载测试流程和测试用例执行的入口,该数据存储文件用于承载所述编辑器保存的数据。

可选的,所述测试准备数据,包括:

接口调用准备数据和/或接口调用校验数据。

可选的,所述接口调用准备数据,包括:

入参、mock数据和/或db准备数据;

所述接口调用校验数据,包括:

期望结果、期望消息、期望db数据和/或期望异常。

可选的,所述操作类型,包括:

测试用例新增、测试用例数据修改、测试用例重命名、测试用例保存和/或测试用例取消。

根据本说明书实施例的第二方面,提供一种测试用例编辑器的使用方法,所述方法包括:

在可视化用例编辑界面展示被测对象的测试用例;所述测试用例由前述任一项的编辑器生成;

根据接收到的针对所述被测对象的测试用例的操作指令,对所述测试用例进行相应编辑。

可选的,所述根据接收到的针对所述被测对象的测试用例的操作指令,对所述测试用例进行相应编辑,具体包括:

接收针对所述被测对象的测试用例的操作指令;

如果所述操作指令的操作类型为测试用例新增,则新增针对所述被测对象的测试用例,并提供该新增的测试用例的编辑界面供用户编写。

可选的,所述根据接收到的针对所述被测对象的测试用例的操作指令,对所述测试用例进行相应编辑,具体包括:

接收针对所述被测对象的测试用例的操作指令;

如果所述操作指令的操作类型为测试用例数据修改,获取该操作指令携带的目标字段的修改数据,并将目标字段的当前数据修改为修改数据。

可选的,所述根据接收到的针对所述被测对象的测试用例的操作指令,对所述测试用例进行相应编辑,具体包括:

接收针对所述被测对象的测试用例的操作指令;

如果所述操作指令的操作类型为测试用例重命名,获取该操作指令携带的重命名名称,将该测试用例的当前名称修改为重命名名称。

可选的,所述方法还包括:

如果接受到针对所述被测对象的测试用例的测试执行请求,运行所述测试用例。

可选的,运行测试用例的提前包括:

完成bean和上下文初始化。

根据本说明书实施例的第三方面,提供一种测试用例编辑器的使用装置,所述装置包括:

展示单元,在可视化用例编辑界面展示被测对象的测试用例;所述测试用例由权利要求1-4中任一项所述的编辑器生成;

编辑单元,根据接收到的针对所述被测对象的测试用例的操作指令,对所述测试用例进行相应编辑。

可选的,所述编辑单元,具体包括:

新增用例子单元,接收针对所述被测对象的测试用例的操作指令;以及,如果所述操作指令的操作类型为测试用例新增,则新增针对所述被测对象的测试用例,并提供该新增的测试用例的编辑界面供用户编写。

可选的,所述编辑单元,具体包括:

修改用例子单元,接收针对所述被测对象的测试用例的操作指令;以及,如果所述操作指令的操作类型为测试用例数据修改,获取该操作指令携带的目标字段的修改数据,并将目标字段的当前数据修改为修改数据。

可选的,所述编辑单元,具体包括:

重命名用例子单元,接收针对所述被测对象的测试用例的操作指令;以及,如果所述操作指令的操作类型为测试用例重命名,获取该操作指令携带的重命名名称,将该测试用例的当前名称修改为重命名名称。

可选的,所述装置还包括:

运行用例子单元,如果接受到针对所述被测对象的测试用例的测试执行请求,运行所述测试用例。

可选的,运行测试用例的提前包括:

完成bean和上下文初始化。

根据本说明书实施例的第四方面,提供一种电子设备,包括:

处理器;

用于存储处理器可执行指令的存储器;

其中,所述处理器被配置为上述任一项测试用例编辑器的使用方法。

本说明书实施例,提供了一种可视化测试用例编辑器,可以快速的在同一界面下完成测试对象全量测试数据的编辑维护,解决了传统数据驱动文件分散冗余、数据参差不齐所来带的维护成本。此外,由于采取同一的测试数据结构,避免了校验遗漏问题,提升了测试有效性。

附图说明

图1是本说明书一实施例提供的测试用例编辑器的示意图;

图2是本说明书一实施例提供的可视化用例编辑界面的示意图;

图3是本说明书一实施例提供的测试用例编辑方法的流程图;

图4是本说明书一实施例提供的测试用例编辑装置的硬件结构图;

图5是本说明书一实施例提供的测试用例编辑装置的模块示意图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本说明书相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本说明书的一些方面相一致的装置和方法的例子。

在本说明书使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书。在本说明书和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。

应当理解,尽管在本说明书可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。

本说明书,基于抽象的测试数据模型,提供了一种可视化的用例编辑器,可实现测试用例高效维护与标准化验证。

具体地,利用本说明书提出的可视化编辑器,可以快速的在同一界面下完成测试对象全量测试数据的编辑维护,解决了传统数据驱动文件分散冗余、数据参差不齐所来带的维护成本。此外,由于采取同一的测试数据结构,避免了校验遗漏问题,提升了测试有效性。

本说明书中的测试用例编辑器,以下可以参考图1所示的例子介绍,所述编辑器包括可视化用例编辑界面;

所述可视化用例编辑界面展示有被测对象的测试用例;

所述测试用例由用户定义的操作对象、操作类型和数据持久化模型构成;其中,所述操作对象包括测试准备数据;所述操作类型为可供用户选择的编辑该测试用例的类型;所述数据持久化模型包含所述测试用例的测试脚本和数据存储文件;该测试脚本用于承载测试流程和测试用例执行的入口,该数据存储文件用于承载所述编辑器保存的数据。

如图1所示,本说明书中可视化的测试用例编辑器实现流程可以包括:

1.定义操作对象。基于大量测试经验,本说明书中将测试用例抽象出preparedata作为操作对象。所述操作对象可以涵盖一个测试用例生命周期内的常用数据种类,例如可以包括接口调用准备数据和接口调用校验数据。

其中,所述接口调用准备数据可以包括入参、mock数据、db准备数据;所述接口调用校验数据可以包括期望结果、期望消息、期望db数据、期望异常。每个测试用例就是一个实例化的操作对象。

一般的,一个被测对象可以有多个测试用例,因此一个被测对象可以有多个操作对象,测试用例的承载形式可以为map{测试用例id,操作对象}。

通过抽象出的操作对象,由于操作对象盖了一个测试用例全部的生命周期内的常用数据种类,因此其独特的数据构成可以适应不同测试准备标准下不同形式的测试数据文件。即,本说明书提供的编辑器不关注记录数据的承载形式、仅关注所需的数据即可,将这些数据抽象出同一数据构成的操作对象。而编辑器就是基于这样同一数据构成的操作对象进行可视化的用例编写维护的。

2.定义操作类型。通过定义的操作类型,以供用户选择可以执行的编辑选项。通常,操作类型可以包括测试用例新增、测试用例数据修改、测试用例重命名、测试用例保存、测试用例取消等。假设某被测对象定义的操作类型为测试用例数据修改,则用户仅可以修改测试用例的数据,而不能对被测对象执行其他编辑。

如前所述,一个被测对象可以有多个测试用例,因此可以同时对每个测试用例进行操作。

3.定义数据持久化模型。所述数据持久化模型为测试用例执行基础,每个被测对象至少可以包含两个文件,一个是测试脚本(例如java测试脚本),测试脚本用于承载测试的流程、也是测试用例执行的入口。另一个是数据存储文件,用于承载所述编辑器保存的测试数据。一般情况下,用户无需感知数据存储文件,所有操作可以通过可视化的测试用例编辑器完成,编辑界面视图可以如下图2所示。图2中,虚线框11提供操作类型的选项,用户可以通过点击选项,进行相应的操作。虚线框12提供了测试用例相关的测试数据。虚线框13提供的准备数据选择的界面。用户可以选择准备数据以定义操作对象。需要说明的是,图2仅是为了说明编辑器界面的一个示例,其并不应当成为对编辑器的具体界面或功能进行的限定。

本说明书提供的测试用例编辑器,通过将测试用例抽象出统一数据结构的操作对象,从而可以基于这样同一数据构成的操作对象进行可视化的用例编写维护的。具体地,由于操作对象数据结构相同,该编辑器可以采用统一的编辑维护接口,调用操作对象,并对操作对象进行维护修改;无需关注不同测试准备标准、不同形式的测试数据文件之间的差异。

本说明书中还提供可一种测试用例编辑器的使用方法,以下可以参考图3所示的例子介绍,所述方法还可以包括:

步骤210:在可视化用例编辑界面展示被测对象的测试用例;所述测试用例由前述任一项所述的编辑器生成;

步骤220:根据接收到的针对所述被测对象的测试用例的操作指令,对所述测试用例进行相应编辑。

在一实施例中,所述根据接收到的针对所述被测对象的测试用例的操作指令,对所述测试用例进行相应编辑,具体包括:

接收针对所述被测对象的测试用例的操作指令;

如果所述操作指令的操作类型为测试用例新增,则新增针对所述被测对象的测试用例,并提供该新增的测试用例的编辑界面供用户编写。

在一实施例中,所述根据接收到的针对所述被测对象的测试用例的操作指令,对所述测试用例进行相应编辑,具体包括:

接收针对所述被测对象的测试用例的操作指令;

如果所述操作指令的操作类型为测试用例数据修改,获取该操作指令携带的目标字段的修改数据,并将目标字段的当前数据修改为修改数据。

在一实施例中,所述根据接收到的针对所述被测对象的测试用例的操作指令,对所述测试用例进行相应编辑,具体包括:

接收针对所述被测对象的测试用例的操作指令;

如果所述操作指令的操作类型为测试用例重命名,获取该操作指令携带的重命名名称,将该测试用例的当前名称修改为重命名名称。

在一实施例中,所述方法还包括:

如果接受到针对所述被测对象的测试用例的测试执行请求,运行所述测试用例。

以下介绍基于本说明书提供的测试用例编辑器执行测试用例的过程。

通常,测试用例执行的测试流程可以包括测试准备阶段setup、测试执行阶段test、测试完成阶段end。

其中,测试准备阶段可以是指系统启动完成bean和上下文初始化等操作,这是测试用例执行的前提。

在执行测试用例之前,还可以包括测试执行前扩展点beforetest,这扩展点中用户可以定制个性化的操作,例如刷新缓存。

测试执行节点可以是基于操作对象驱动,依次完成数据准备、接口调用、数据校验、数据清理完整测试操作。

类似的,在执行测试用例之后,也可以包括测试执行后扩展点aftertest,这个扩展点中用户可以定制个性化的操作,例如刷新缓存。

其中,所述操作对象如前所述可以包括入参、mock数据、db准备数据、期望结果、期望消息、期望db数据、期望异常等测试用例全生命周期内常用数据种类。

本实施例,通过提供一种可视化的测试用例编辑器,可以快速的在同一界面下完成测试对象全量测试数据的编辑维护,解决了传统数据驱动文件分散冗余、数据参差不齐所来带的维护成本。此外,由于采取同一的测试数据结构,避免了校验遗漏问题,提升了测试有效性。

与前述测试用例编辑方法实施例相对应,本说明书还提供了测试用例编辑装置的实施例。所述装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在设备的处理器将非易失性存储器中对应的计算机业务程序指令读取到内存中运行形成的。从硬件层面而言,如图4所示,为本说明书测试用例编辑装置所在设备的一种硬件结构图,除了图4所示的处理器、网络接口、内存以及非易失性存储器之外,实施例中装置所在的设备通常根据测试用例编辑实际功能,还可以包括其他硬件,对此不再赘述。

请参见图5,为本说明书一实施例提供的测试用例编辑装置的模块图,所述装置对应了图3所示实施例,所述装置包括:

展示单元310,在可视化用例编辑界面展示被测对象的测试用例;所述测试用例由前述任一项所述的编辑器生成;

编辑单元320,根据接收到的针对所述被测对象的测试用例的操作指令,对所述测试用例进行相应编辑。

可选的,所述编辑单元320,具体包括:

新增用例子单元,接收针对所述被测对象的测试用例的操作指令;以及,如果所述操作指令的操作类型为测试用例新增,则新增针对所述被测对象的测试用例,并提供该新增的测试用例的编辑界面供用户编写。

可选的,所述编辑单元320,具体包括:

修改用例子单元,接收针对所述被测对象的测试用例的操作指令;以及,如果所述操作指令的操作类型为测试用例数据修改,获取该操作指令携带的目标字段的修改数据,并将目标字段的当前数据修改为修改数据。

可选的,所述编辑单元320,具体包括:

重命名用例子单元,接收针对所述被测对象的测试用例的操作指令;以及,如果所述操作指令的操作类型为测试用例重命名,获取该操作指令携带的重命名名称,将该测试用例的当前名称修改为重命名名称。

可选的,所述装置还包括:

运行用例子单元,如果接受到针对所述被测对象的测试用例的测试执行请求,运行所述测试用例。

可选的,运行测试用例的提前包括:

完成bean和上下文初始化。

上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机,计算机的具体形式可以是个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件收发设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任意几种设备的组合。

上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。

对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本说明书方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。

以上图5描述了测试用例编辑装置的内部功能模块和结构示意,其实质上的执行主体可以为一种电子设备,包括:

处理器;

用于存储处理器可执行指令的存储器;

其中,所述处理器被配置为:

在可视化用例编辑界面展示被测对象的测试用例;所述测试用例由前述任一项所述的编辑器生成;

根据接收到的针对所述被测对象的测试用例的操作指令,对所述测试用例进行相应编辑。

可选的,所述根据接收到的针对所述被测对象的测试用例的操作指令,对所述测试用例进行相应编辑,具体包括:

接收针对所述被测对象的测试用例的操作指令;

如果所述操作指令的操作类型为测试用例新增,则新增针对所述被测对象的测试用例,并提供该新增的测试用例的编辑界面供用户编写。

可选的,所述根据接收到的针对所述被测对象的测试用例的操作指令,对所述测试用例进行相应编辑,具体包括:

接收针对所述被测对象的测试用例的操作指令;

如果所述操作指令的操作类型为测试用例数据修改,获取该操作指令携带的目标字段的修改数据,并将目标字段的当前数据修改为修改数据。

可选的,所述根据接收到的针对所述被测对象的测试用例的操作指令,对所述测试用例进行相应编辑,具体包括:

接收针对所述被测对象的测试用例的操作指令;

如果所述操作指令的操作类型为测试用例重命名,获取该操作指令携带的重命名名称,将该测试用例的当前名称修改为重命名名称。

可选的,还包括:

如果接受到针对所述被测对象的测试用例的测试执行请求,运行所述测试用例。

可选的,运行测试用例的提前包括:

完成bean和上下文初始化。

在上述电子设备的实施例中,应理解,该处理器可以是中央处理单元(英文:centralprocessingunit,简称:cpu),还可以是其他通用处理器、数字信号处理器(英文:digitalsignalprocessor,简称:dsp)、专用集成电路(英文:applicationspecificintegratedcircuit,简称:asic)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,而前述的存储器可以是只读存储器(英文:read-onlymemory,缩写:rom)、随机存取存储器(英文:randomaccessmemory,简称:ram)、快闪存储器、硬盘或者固态硬盘。结合本发明实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于电子设备实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本说明书的其它实施方案。本说明书旨在涵盖本说明书的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本说明书的一般性原理并包括本说明书未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本说明书的真正范围和精神由下面的权利要求指出。

应当理解的是,本说明书并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本说明书的范围仅由所附的权利要求来限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1