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

一种基于web的自动测试方法及装置

文献发布时间:2023-06-19 10:29:05


一种基于web的自动测试方法及装置

技术领域

本发明涉及互联网技术领域,更具体地,涉及一种基于web的自动测试方法及装置。

背景技术

软件测试的目的是在预设条件下运行系统或应用程序,评估运行结果,其中预先条件应包括正常条件和异常条件,测试的结果是看预期结果和实际结果是否完全相同。随着互联网技术的不断发展,越来越多的软件在互联网上建立。由于这些互联网中的软件系统中存储着大量的信息,而且在使用过程中可能会出现很多新功能,这些业务功能和被存储的信息都十分重要,因此这些软件在使用前,或使用一段时间后,需要对其业务功能、存储能力、运算能力和通信速度等都进行全面的测试。

但现有的测试方案存在以下缺陷:一方面,目前测试均为小规模的测试,且没有统一的测试方案,采用传统的手动测试方法,很多重复的业务功能都需要反复的配置,既繁琐复杂,有效率极低;另一方面,现有测试方案通用性差,更换被测试系统,需要重新设计测试方案。

发明内容

鉴于上述问题,本发明提出了一种基于web的自动测试方法及装置,其可以实现对业务功能的自动测试,提升软件测试的效率。

根据本发明实施例,提供一种基于web的自动测试方法,该方法包括:

获取测试需求和测试范围,并根据所述测试需求和测试范围收集测试资料;

根据所述测试资料,排除已经确定问题,并列出问题清单;

根据所述问题清单,由管理人员进行测试问题核对,获得核对后的测试清单;

根据所述核对后的测试清单自动生成测试用例;

根据测试用例加载测试环境,并生成测试参数;

在所述测试环境和所述测试参数下开始测试,并获取测试bug数据;

核对所述测试bug数据中的自动测试错误理解bug,并标记出实际存在bug;

根据测试结果和所述实际存在bug生成电子版测试报告;

保存所述电子版测试报告,在检测到进行迭代测试时,仅测试存在bug的业务功能。

在一个或多个实施例中,优选地,所述获取测试需求和测试范围,并根据所述测试需求和测试范围收集测试资料,具体包括:

技术人员提供原型图,并转化为电子格式上传为电子格式的原型图;

测试人员提出测试需求文档,并根据测试条目表格化划分,保存为表格化的测试需求文档,其中,在所述表格化的测试需求文档中单个测试功能仅包括一个测试条目;

管理人员提出业务测试需求,要求明确测试条目的合格评价指标;

根据所述电子格式的原型图、所述表格化的测试需求文档、所述业务测试需求和所述合格评价指标,保存为测试资料。

在一个或多个实施例中,优选地,所述根据所述测试资料,排除已经确定问题,并列出问题清单,具体包括:

根据所述测试资料,获取重点测试点,设置bug验证位置和数据节点;

分析所述测试资料中的易错点,获取错误数据;

根据所述测试资料,标记逻辑存在错误和逻辑不清的测试需求和方案;

根据当前的测试资料生成问题清单。

在一个或多个实施例中,优选地,所述根据所述问题清单,由管理人员进行测试问题核对,获得核对后的测试清单,具体包括:

根据问题清单,生成测试方案,并获得电子版测试方案表;

根据所述电子版测试方案表,提取测试时间数据,生成时间数据顺序的测试计划表;

根据所述测试计划表,提取所需测试模块,并生成概要测试用例。

在一个或多个实施例中,优选地,所述根据所述核对后的测试清单自动生成测试用例,具体包括:

根据所述概要测试用例进行等价类划分,并保存为过程测试用例;

对所述过程测试用例进行边界值分析,确认测试用例的测试条件;

根据所述过程测试用例和所述测试用例的测试条件进行错误推测,获取计划内错误数据;

判断所述过程测试用例的权限的分配是否正确;

根据所述过程测试用例进行测试场景划分,获取测试场景表;

根据所述测试场景表和所述过程测试用例生成判断表;

将当前所述过程测试用例保存为测试用例。

在一个或多个实施例中,优选地,所述根据测试用例加载测试环境,并生成测试参数,具体包括:

根据所述测试用例提取所用测试模块,并将所述测试模块的编号保存;

根据所述测试模块的编号生成测试环境;

根据所述测试模块的编号配置初始化参数;

根据所述测试模块的编号配置测试参数,具体的所述测试参数采用数据表格形式,按照测试用例的实际顺序确定所述测试参数数据表格内容的顺序。

在一个或多个实施例中,优选地,所述在所述测试环境和所述测试参数下开始测试,并获取测试bug数据,具体包括:

根据所述测试参数和所述测试环境,启动Web浏览器;

向浏览器发送测试脚本,并在客户端等待对比预测测试结果;

当所述预测测试结果无法满足时,生成测试bug;

记录所述测试bug产生后的获得数据、测试条件和所述测试bug发生前的发送数据,并按顺序保存为测试bug数据。

在一个或多个实施例中,优选地,所述核对所述测试bug数据中的自动测试错误理解bug,并标记出实际存在bug,具体包括:

对所述测试bug数据进行数据备注,数据备注包括运行bug、非计划性bug、计划内bug和错误规划bug;

在所述测试bug数据中提取非正常bug,所述非正常bug包括所述非计划性bug和所述错误规划bug;

删除所述非正常bug在所述测试bug数据中对应的bug结果,转换为电子数据表,并保存为剔除系统错误的bug数据。

在一个或多个实施例中,优选地,所述根据测试结果和所述实际存在bug生成电子版测试报告,具体包括:

获得所述剔除系统错误的bug数据,保存为第一测试结果;

根据所述第一测试结果获得缺陷数量;

根据所述第一测试结果获得初始测试状态清单;

根据所述第一测试结果利用饼状图,分析测试bug分布情况;

结合所述第一测试结果、所述缺陷数量、所述初始测试状态清单和所述测试bug分布情况生成电子版测试报告。

本发明实施例中,提供了一种基于web的自动测试装置,该装置包括:

搜集模块,用于获取测试需求和测试范围,并根据所述测试需求和测试范围收集测试资料;

问题清单模块,用于根据所述测试资料,排除已经确定问题,并列出问题清单;

测试列表模块,用于根据所述问题清单,由管理人员进行测试问题核对,获得核对后的测试清单;

自动测试用例表生成模块,用于根据所述核对后的测试清单自动生成测试用例;

测试环境搭建模块,用于根据测试用例加载测试环境,并生成测试参数;

BUG提交模块,用于在所述测试环境和所述测试参数下开始测试,并获取测试bug数据;

BUG筛选模块,用于核对所述测试bug数据中的自动测试错误理解bug,并标记出实际存在bug;

报告出具模块,用于根据测试结果和所述实际存在bug生成电子版测试报告;

迭代测试模块,用于保存所述电子版测试报告,在检测到进行迭代测试时,仅测试存在bug的业务功能。

本发明的实施例提供的技术方案可以包括以下有益效果:

本发明实施例中,通过该方案提供一种基于web的自动测试方案,该方案可以提升软件测试的通用性,对不同系统仅需提供相似的输入测试数据即可实现自动的测试。此外,该方案还能够自动的运行脚本,对于大规模的、高重复率的测试,采用这种自动测试的方式,可以仅需一次设置即可完成多次重复的业务功能验证,并能够自动生成最终电子版测试报告,能够有效提升测试效率。

本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。本发明的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。

下面通过附图和实施例,对本发明的技术方案做进一步的详细描述。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明一个实施例的一种基于web的自动测试方法的流程图。

图2是本发明一个实施例的一种基于web的自动测试方法中的所述获取测试需求和测试范围,并根据所述测试需求和测试范围收集测试资料的流程图。

图3是本发明一个实施例的一种基于web的自动测试方法中的所述根据所述测试资料,排除已经确定问题,并列出问题清单的流程图。

图4是本发明一个实施例的一种基于web的自动测试方法中的所述根据所述问题清单,由管理人员进行测试问题核对,获得核对后的测试清单的流程图。

图5是本发明一个实施例的一种基于web的自动测试方法中的所述根据所述核对后的测试清单自动生成测试用例的流程图。

图6是本发明一个实施例的一种基于web的自动测试方法中的所述根据测试用例加载测试环境,并生成测试参数的流程图。

图7是本发明一个实施例的一种基于web的自动测试方法中的所述在所述测试环境和所述测试参数下开始测试,并获取测试bug数据的流程图。

图8是本发明一个实施例的一种基于web的自动测试方法中的自动测试单个脚本执行流程图。

图9是本发明一个实施例的一种基于web的自动测试方法中的所述核对所述测试bug数据中的自动测试错误理解bug,并标记出实际存在bug的流程图。

图10是本发明一个实施例的一种基于web的自动测试方法中的所述根据测试结果和所述实际存在bug生成电子版测试报告的流程图。

图11是本发明一个实施例的一种基于web的自动测试方法中的数据变化流程图。

图12是本发明一个实施例的一种基于web的自动测试装置的结构图。

具体实施方式

在本发明的说明书和权利要求书及上述附图中的描述的一些流程中,包含了按照特定顺序出现的多个操作,但是应该清楚了解,这些操作可以不按照其在本文中出现的顺序来执行或并行执行,操作的序号如101、102等,仅仅是用于区分开各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

软件测试的目的预设条件下运行系统或应用程序,评估运行结果,预先条件应包括正常条件和异常条件,测试的结果是看预期结果和实际结果是否完全相同。目前,随着互联网技术的不断发展,越来越多的管理系统在互联网上建立。由于这些互联网中的管理系统中存储着大量的信息,而且在使用过程中可能会出现很多新功能,这些业务功能和被存储的信息都十分重要,因此这些管理系统在使用前,或使用一段时间后,需要对其业务功能、存储能力、运算能力和通信速度等都进行全面的测试。

但现有的测试方案存在以下缺陷:一方面,目前测试均为小规模的测试,且没有统一的测试方案,采用传统的手动测试方法,很多重复的业务功能都需要反复的配置,既繁琐复杂,有效率极低。

自动化测试是一个过程,涉及一个自动化工具来对软件应用程序执行测试用例套件和预定义的操作。测试工具获取实际结果,并将其与预期结果进行比较,以生成详细的测试报告。

本发明实施例中,提供了一种基于web的自动测试方法及装置,将自动化测试引入到软件测试过程中,通过自动设计软件测试流程,生成bug清单,给出最终的电子版测试报告,提升软件整体的测试效率。

图1是本发明一个实施例的一种基于web的自动测试方法的流程图。

如图1所示,在一个或多个实施例中,优选地,所示基于web的自动测试方法包括:

S101、获取测试需求和测试范围,并根据所述测试需求和测试范围收集测试资料;

S102、根据所述测试资料,排除已经确定问题,并列出问题清单;

S103、根据所述问题清单,由管理人员进行测试问题核对,获得核对后的测试清单;

S104、根据所述核对后的测试清单自动生成测试用例;

S105、根据测试用例加载测试环境,并生成测试参数;

S106、在所述测试环境和所述测试参数下开始测试,并获取测试bug数据;

S107、核对所述测试bug数据中的自动测试错误理解bug,并标记出实际存在bug;

S108、根据测试结果和所述实际存在bug生成电子版测试报告;

S109、保存所述电子版测试报告,在检测到进行迭代测试时,仅测试存在bug的业务功能。

本发明实施例中,提供了完整的成套测试流程,该方法通过测试需求收集、测试资料排查、问题清单核对,生成全套的自动测试用例,进而在加载合适的测试环境基础上按照顺序逐一运行每个测试用例,完成自动的测试,最终测试将会生成测试bug,并保存一个电子版测试报告。通过该方案可以对不同类型的软件进行自动的功能测试。

图2是本发明一个实施例的一种基于web的自动测试方法中的所述获取测试需求和测试范围,并根据所述测试需求和测试范围收集测试资料的流程图。

在一个或多个实施例中,优选地,所述获取测试需求和测试范围,并根据所述测试需求和测试范围收集测试资料,具体包括:

S201、技术人员提供原型图,并转化为电子格式上传为电子格式的原型图;

S202、测试人员提出测试需求文档,并根据测试条目表格化划分,保存为表格化的测试需求文档,其中,在所述表格化的测试需求文档中单个测试功能仅包括一个测试条目;

S203、管理人员提出业务测试需求,要求明确测试条目的合格评价指标;

S204、根据所述电子格式的原型图、所述表格化的测试需求文档、所述业务测试需求和所述合格评价指标,保存为测试资料。

本发明实施例中,所述的技术人员和测试人员不做限定,也可以包括其他人员,只需要能够提供足够用于测试的原型图、测试需求文档和合格评价指标即可开始整个测试。所述获取测试需求和测试范围,并根据所述测试需求和测试范围收集测试资料是整个测试的数据基础。

图3是本发明一个实施例的一种基于web的自动测试方法中的所述根据所述测试资料,排除已经确定问题,并列出问题清单的流程图。

如图3所示,在一个或多个实施例中,优选地,所述根据所述测试资料,排除已经确定问题,并列出问题清单,具体包括:

S301、根据所述测试资料,获取重点测试点,设置bug验证位置和数据节点;

S302、分析所述测试资料中的易错点,获取错误数据;

S303、根据所述测试资料,标记逻辑存在错误和逻辑不清的测试需求和方案;

S304、根据当前的测试资料生成问题清单。

本发明实施例中,在进行测试之前,对于测试中需要特殊考核的重点测试点需要进行详细的bug标记,并能够对一些数据节点的数据进行验证,确认不出现错误数据等情况,为此需要形成详细的问题清单,作为自动测试的考察重点。

图4是本发明一个实施例的一种基于web的自动测试方法中的所述根据所述问题清单,由管理人员进行测试问题核对,获得核对后的测试清单的流程图。

如图4所示,在一个或多个实施例中,优选地,所述根据所述问题清单,由管理人员进行测试问题核对,获得核对后的测试清单,具体包括:

S401、根据问题清单,生成测试方案,并获得电子版测试方案表;

S402、根据所述电子版测试方案表,提取测试时间数据,生成时间数据顺序的测试计划表;

S403、根据所述测试计划表,提取所需测试模块,并生成概要测试用例。

本发明实施例中,根据问题清单,则可以生成测试方案,进而确认此次测试中的概要测试用例,但是这些测试用例尚为混乱的测试功能,可能存在重复测试,因此需要在之后进行一定的归类和删除。

图5是本发明一个实施例的一种基于web的自动测试方法中的所述根据所述核对后的测试清单自动生成测试用例的流程图。

如图5所示,在一个或多个实施例中,优选地,所述根据所述核对后的测试清单自动生成测试用例,具体包括:

S501、根据所述概要测试用例进行等价类划分,并保存为过程测试用例;

S502、对所述过程测试用例进行边界值分析,确认测试用例的测试条件;

S503、根据所述过程测试用例和所述测试用例的测试条件进行错误推测,获取计划内错误数据;

S504、判断所述过程测试用例的权限的分配是否正确;

S505、根据所述过程测试用例进行测试场景划分,获取测试场景表;

S506、根据所述测试场景表和所述过程测试用例生成判断表;

S507、将当前所述过程测试用例保存为测试用例。

本发明实施例中,通过对概要测试用例进行等价类的划分,删除重复的测试,进而将概要的测试用例最终划分为测试用例。这些测试用例将会是进行后续测试的数据源。

图6是本发明一个实施例的一种基于web的自动测试方法中的所述根据测试用例加载测试环境,并生成测试参数的流程图。

在一个或多个实施例中,优选地,所述根据测试用例加载测试环境,并生成测试参数,具体包括:

S601、根据所述测试用例提取所用测试模块,并将所述测试模块的编号保存;

S602、根据所述测试模块的编号生成测试环境;

S603、根据所述测试模块的编号配置初始化参数;

S604、根据所述测试模块的编号配置测试参数,具体的所述测试参数采用数据表格形式,按照测试用例的实际顺序确定所述测试参数数据表格内容的顺序。

本发明实施例中,在获得测试用例后,需要根据被测试的系统准备测试环境,这部分环境包括基础的测试环境和测试环境表,测试环境表用于根据实际的运行情况自动改变环境的准备情况。

图7是本发明一个实施例的一种基于web的自动测试方法中的所述在所述测试环境和所述测试参数下开始测试,并获取测试bug数据的流程图。

在一个或多个实施例中,优选地,所述在所述测试环境和所述测试参数下开始测试,并获取测试bug数据,具体包括:

S701、根据所述测试参数和所述测试环境,启动Web浏览器;

S702、向浏览器发送测试脚本,并在客户端等待对比预测测试结果;

S703、当所述预测测试结果无法满足时,生成测试bug;

S704、记录所述测试bug产生后的获得数据、测试条件和所述测试bug发生前的发送数据,并按顺序保存为测试bug数据。

本发明实施例中,自动测设需要启动Web浏览器,并通过浏览器发送测试脚本,在测试结果与预测结果出现偏差时,生成一个测试的bug,并根据该测试bug保存其对应的测试条件、测试前的准备数据等,保证bug分析时,能够获取足够的数据。

图8是本发明一个实施例的一种基于web的自动测试方法中的自动测试单个脚本执行流程图。如图8所示,在一个或多个实施例中,优选地,提供了一个具体的例子,采用搜狐浏览器发送了json格式命令,在服务器收到json格式命令测试脚本后,先进行解析,进而通过浏览器自动执行API,执行页面功能。最终,通过驱动的自动测试单,即可实现全部的测试任务的自动测试。

图9是本发明一个实施例的一种基于web的自动测试方法中的所述核对所述测试bug数据中的自动测试错误理解bug,并标记出实际存在bug的流程图。

S901、在一个或多个实施例中,优选地,所述核对所述测试bug数据中的自动测试错误理解bug,并标记出实际存在bug,具体包括:

S902、对所述测试bug数据进行数据备注,数据备注包括运行bug、非计划性bug、计划内bug和错误规划bug;

S903、在所述测试bug数据中提取非正常bug,所述非正常bug包括所述非计划性bug和所述错误规划bug;

S904、删除所述非正常bug在所述测试bug数据中对应的bug结果,转换为电子数据表,并保存为剔除系统错误的bug数据。

本发明实施例中,bug是整个测试过程中最主要的测试目标,当发现bug时,通过本实施例给出的方案可以直接记录全部的数据,同时也可提取出一些原本不需要记录的bug,并将其删除,降低工作量,提升自动测试效率。

图10是本发明一个实施例的一种基于web的自动测试方法中的所述根据测试结果和所述实际存在bug生成电子版测试报告的流程图。

在一个或多个实施例中,优选地,所述根据测试结果和所述实际存在bug生成电子版测试报告,具体包括:

S1001、获得所述剔除系统错误的bug数据,保存为第一测试结果;

S1002、根据所述第一测试结果获得缺陷数量;

S1003、根据所述第一测试结果获得初始测试状态清单;

S1004、根据所述第一测试结果利用饼状图,分析测试bug分布情况;

S1005、结合所述第一测试结果、所述缺陷数量、所述初始测试状态清单和所述测试bug分布情况生成电子版测试报告。

本发明实施例中,生成的电子版测报告包括了多类型的数据,具体的,包括所述第一测试结果、所述缺陷数量、所述初始测试状态清单和所述测试bug分布情况,原因是这些信息需要一起考虑,才能够完成对一个bug的理解,进而利用这个方式实现对系统的升级和改造。因为,自动测试的目的也是为了更新系统,解决全部的bug及缺陷。

图11是本发明一个实施例的一种基于web的自动测试方法中的数据变化流程图。如图11所示,在一个或多个实施例中,优选地,对全部的使用的数据流进行了标识,可以明确各个数据的数据源源头,进而方便对整套自动测试系统的理解。通过资料获取、并在此基础上进行一系列的数据资料的分析和问题的设置,即可完成基于web的自动测试方法。

图12是本发明一个实施例的一种基于web的自动测试装置的结构图。

如图12所示,在一个或多个实施例中,优选地,提供了一种基于web的自动测试装置,该装置包括:

搜集模块1201,用于获取测试需求和测试范围,并根据所述测试需求和测试范围收集测试资料;

问题清单模块1202,用于根据所述测试资料,排除已经确定问题,并列出问题清单;

测试列表模块1203,用于根据所述问题清单,由管理人员进行测试问题核对,获得核对后的测试清单;

自动测试用例表生成模块1204,用于根据所述核对后的测试清单自动生成测试用例;

测试环境搭建模块1205,用于根据测试用例加载测试环境,并生成测试参数;

BUG提交模块1206,用于在所述测试环境和所述测试参数下开始测试,并获取测试bug数据;

BUG筛选模块1207,用于核对所述测试bug数据中的自动测试错误理解bug,并标记出实际存在bug;

报告出具模块1208,用于根据测试结果和所述实际存在bug生成电子版测试报告;

迭代测试模块1209,用于保存所述电子版测试报告,在检测到进行迭代测试时,仅测试存在bug的业务功能。

本发明实施例中,提供的自动测试方法为一种软件方法,进一步给出了此方法的通用的实现装置,包括了多个模块,其中的各模块分别实现搜集、问题清单生成、自动测试用例表生成等一系列功能,通过运行该套装置,进而可在不同地点实现各类软件系统的通用测试。

在本实施例的技术方案中,通过提供一种基于web的自动测试方案,可实现通用的软件测试,对不同系统仅需提供相似的输入测试数据即可实现自动的测试。此外,该方案还能够自动的运行脚本,对于大规模的、高重复率的测试,采用这种自动测试的方式,可以仅需一次设置即可完成多次重复的业务功能验证,并能够自动生成最终电子版测试报告,能够有效提升测试效率。

本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。

本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。

相关技术
  • 一种基于web的自动测试方法及装置
  • 一种基于WebScoket协议的即时通讯软件自动化测试方法
技术分类

06120112568603