一种自动化测试方法及装置与流程

文档序号:17288019发布日期:2019-04-03 03:43阅读:113来源:国知局
一种自动化测试方法及装置与流程

本发明涉及自动化测试技术领域,特别涉及一种自动化测试方法及装置。



背景技术:

在自动化测试执行过程中,难免会出现因为执行机的环境或者延时等问题导致的用例失败问题,这些都属于非功能问题导致的用例执行失败。而这些非功能问题导致的用例执行失败的结果会直接影响测试报告,使得最终的测试报告无法准确地反映出测试系统的性能问题。



技术实现要素:

本发明公开了一种自动化测试方法及装置,可以解决现有自动化测试报告中包含非功能问题导致的用例执行失败的结果而影响自动化测试报告可靠性的问题。

本文公开的一种自动化测试方法,包括:

从已生成的自动化测试报告中筛选出执行结果的类型属于预设类型的测试用例,将筛选出的测试用例的名称存储到预先创建的列表中;

按照所述列表中存储的所有测试用例的名称分别匹配至对应的测试用例,对匹配出的测试用例依次执行,在所匹配出的所有测试用例执行完成后,根据得到的执行结果形成最终的自动化测试报告。

可选地,上述方法中,所述执行结果的预设类型至少包括如下一种或几种:

执行失败、执行错误、执行成功。

可选地,上述方法中,所述对匹配出的测试用例依次执行,包括:

在本地执行机或其他执行机上依次执行匹配出的测试用例。

可选地,上述方法中,在所匹配出的所有测试用例执行完成后,根据得到的执行结果形成最终的自动化测试报告,包括:

在所匹配出的所有测试用例执行完成后,将得到的执行结果更新至所述已生成的自动化测试报告中形成最终的自动化测试报告。

可选地,上述方法中,在所匹配出的所有测试用例执行完成后,根据得到的执行结果形成最终的自动化测试报告,包括:

在所匹配出的所有测试用例执行完成后,根据得到的执行结果生成新的自动化测试报告。

本文还公开了一种自动化测试装置,包括存储器和处理器,其中:

所述存储器,用于保存自动化测试程序;

所述处理器,用于读取执行所述自动化测试程序,执行如下操作:

从已生成的自动化测试报告中筛选出执行结果的类型属于预设类型的测试用例,将筛选出的测试用例的名称存储到预先创建的列表中;

按照所述列表中存储的所有测试用例的名称分别匹配至对应的测试用例,对匹配出的测试用例依次执行,在所匹配出的所有测试用例执行完成后,根据得到的执行结果形成最终的自动化测试报告。

可选地,上述装置中,所述执行结果的预设类型至少包括如下一种或几种:

执行失败、执行错误、执行成功。

可选地,上述装置中,所述对匹配出的测试用例依次执行,包括:

在本地执行机或其他执行机上依次执行匹配出的测试用例。

可选地,上述装置中,在所匹配出的所有测试用例执行完成后,根据得到的执行结果形成最终的自动化测试报告,包括:

在所匹配出的所有测试用例执行完成后,将得到的执行结果更新至所述已生成的自动化测试报告中形成最终的自动化测试报告。

可选地,上述装置中,在所匹配出的所有测试用例执行完成后,根据得到的执行结果形成最终的自动化测试报告,包括:

在所匹配出的所有测试用例执行完成后,根据得到的执行结果生成新的自动化测试报告。

本申请技术方案根据提供的自动化测试报告,执行失败的测试用例,减少环境因素等非功能问题导致的用例执行失败的结果,提高自动化测试报告的可靠性。

附图说明

图1为本发明实施例中自动化测试方法的流程示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下文将结合具体实施方式对本发明技术方案作进一步详细说明。需要说明的是,在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。

实施例1

本申请发明人提出,在当前的自动化测试执行过程中,难免会出现因为执行机的环境或者延时等非功能问题导致的用例失败的结果,对于这些非功能问题导致的用例执行失败,如果能够重新执行一次或几次,可能会执行成功,从而尽量排除环境因素、延时因素等非功能问题导致的用例执行失败的结果,使得最终的测试结果是与功能相关的fail。即使得最终的自动化测试报告反映的均是与系统功能相关的失败结果,从而提高自动化测试报告的可靠性。

基于上述思想,本实施例提供一种自动化测试方法,主要包括:

从已生成的自动化测试报告中筛选出执行结果的类型属于预设类型的测试用例,将筛选出的测试用例的名称存储到预先创建的列表中;

按照所述列表中存储的所有测试用例的名称分别匹配至对应的测试用例,对匹配出的测试用例依次执行,在所匹配出的所有测试用例执行完成后,根据得到的执行结果形成最终的自动化测试报告。

本实施例中执行结果的预设类型可以包括如下一种或几种:

执行失败(fail)、执行错误(error),执行成功。

其中,执行匹配出的测试用例时,可以在本地执行机或其他执行机上执行匹配出的测试用例。

本实施例中,根据得到的执行结果形成最终的自动化测试报告的方式有多种。例如,可以在所匹配出的所有测试用例执行完成后,将得到的执行结果更新至已生成的自动化测试报告中形成最终的自动化测试报告。或者,在所匹配出的所有测试用例执行完成后,根据得到的执行结果直接生成新的自动化测试报告,新的自动化测试报告可认为是最终的自动化测试报告,此时,结合已生成自动化测试报告和最终的自动化测试报告,可以反映出测试系统整体的待测性能。

下面结合附图说明本实施例提供的自动化测试方法的一种示例性实施方式,该种实施方式中,通过创建列表,逐条读取自动化测试报告中的数据,如果测试用例的执行结果的类型为失败(或者error、成功等,可预先配置的,即预设类型),将本条测试用例的用例名称取出并存储在列表中。根据测试报告执行测试用例实际执行的是列表中的具体的测试用例。当列表中所有的测试用例执行完成后,生成最终的自动化测试报告。该完整过程如图1所示,包括如下操作步骤。

步骤100,创建列表。

步骤200,按序读取自动化测试报告中各项测试用例的执行结果,判断当前读取的测试用例的执行结果的类型是否属于预设类型,如果属于预设类型,进入步骤300,如果不属于预设类型,进入步骤400。

其中,预设类型是可配置的,例如预设类型可以是执行结果为执行失败,或者执行错误(error),或者执行成功中的任一种或几种。

本文中,执行失败一般指执行的实际结果与预期结果不一致。

执行错误一般指执行的中间过程出现了错误,如找不到确认按钮,连接不到目的ip等。

而当预设类型包括执行成功时,一般还包括执行失败或执行错误,这样所有测试用例均属于预设类型,此时需要重复执行自动化测试报告中的所有测试用例。

步骤300,将当前读取的执行结果对应的测试用例的名称存储在所创建的列表中,进入步骤400。

步骤400,判断读取的执行结果对应的测试用例是否为自动化测试报告中的最后一条测试用例的数据,如果是最后一条,进入步骤500,如果不是最后一条,返回步骤200。

步骤500,逐条读取所创建的列表中的测试用例的名称,根据测试用例的名称匹配到具体的测试用例并再次执行。

其中,执行匹配出的测试用例时,可以在本地执行机或其他执行机上执行匹配出的测试用例,即本地执行机上的运行环境与其他执行机的运行环境不同,从而有效地排除了环境干扰造成的测试用例执行失败。

步骤600,当所创建的列表中所有的测试用例执行完成后,生成最终的自动化测试报告。

本实施例中,创建的列表中所有的测试用例(可简称为筛选出的测试用例)执行完成后,可以将此次执行完成的执行结果替换之前的自动化测试报告中筛选出的测试用例的执行结果,从而形成最终的自动化测试报告。也可以根据列表中所有的测试用例执行完成后得到的测试结果直接生成新的自动化测试报告。

实施例2

本实施例提供一种自动化测试装置,包括存储器和处理器,其中:

所述存储器,用于保存自动化测试程序;

所述处理器,用于读取执行所述自动化测试程序,执行如下操作:

从已生成的自动化测试报告中筛选出执行结果的类型属于预设类型的测试用例,将筛选出的测试用例的名称存储到预先创建的列表中;

按照所述列表中存储的所有测试用例的名称分别匹配至对应的测试用例,对匹配出的测试用例依次执行,在所匹配出的所有测试用例执行完成后,根据得到的执行结果形成最终的自动化测试报告。

本实施例中执行结果的预设类型可以包括执行失败、执行错误和执行成功中的任一种或几种。

执行匹配出的测试用例时,可以在本地执行机或其他执行机上执行。

根据得到的执行结果形成最终的自动化测试报告可以采用任意方式,本实施例对此不做限制。例举来说明,可以采用更新方式,即在所匹配出的所有测试用例执行完成后,将得到的执行结果更新至已生成的自动化测试报告中形成最终的自动化测试报告。或者,直接生成方式,即在所匹配出的所有测试用例执行完成后,根据得到的执行结果直接生成新的自动化测试报告,新的自动化测试报告可认为是最终的自动化测试报告。要注意的是,此种情况下,需要结合已生成自动化测试报告和最终的自动化测试报告,反映出测试系统整体的待测性能。

从上述实施例可以看出,本申请技术方案仅通过自动化测试报告,既可以在本机上重复执行失败的测试用例,也可以在其他执行机上执行失败的测试用例,从而有效减少环境干扰等非功能问题导致的用例失败,从而可以提高自动化测试报告的可靠性。例如,在现场环境与实验室环境不一致的情况下,采用本申请技术方案得到的自动化测试报告可以更高效、更准确的定位问题。

本领域普通技术人员可以理解上述方法中的全部或部分步骤可通过程序来指令相关硬件完成,所述程序可以存储于计算机可读存储介质中,如只读存储器、磁盘或光盘等。可选地,上述实施例的全部或部分步骤也可以使用一个或多个集成电路来实现。相应地,上述实施例中的各模块/单元可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。本申请不限制于任何特定形式的硬件和软件的结合。

以上所述,仅为本发明的较佳实例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

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