基于关键字的自动测试方法及系统.pdf

上传人:大师****2 文档编号:1898093 上传时间:2018-07-23 格式:PDF 页数:10 大小:561.74KB
返回 下载 相关 举报
摘要
申请专利号:

CN201510023579.8

申请日:

2015.01.16

公开号:

CN104536897A

公开日:

2015.04.22

当前法律状态:

授权

有效性:

有权

法律详情:

授权|||实质审查的生效IPC(主分类):G06F 11/36申请日:20150116|||公开

IPC分类号:

G06F11/36

主分类号:

G06F11/36

申请人:

安一恒通(北京)科技有限公司

发明人:

郭明浩; 何军

地址:

100091北京市海淀区东北旺西路8号中关村软件园4号楼C座1-03

优先权:

专利代理机构:

广州三环专利代理有限公司44202

代理人:

温旭; 郝传鑫

PDF下载: PDF下载
内容摘要

本发明公开了一种基于关键字的自动测试方法及系统,所述方法包括:从步骤表中读取步骤信息;根据所述步骤信息的对象关键字字段的值,从对象表中获取与该对象关键字对应的对象的信息;根据所述获取的对象的信息判断所述对象是否为逻辑分支关键字对象;以及如果所述对象是逻辑分支关键字对象,则对所述对象进行逻辑分支控制处理。通过采用本发明中的基于关键字的自动测试方法及系统,可实现测试系统在流程执行过程中不同条件下的选择执行,使得运行过程的容错性更好,从而提高运行效率。

权利要求书

权利要求书
1.  一种基于关键字的自动测试方法,其特征在于,所述方法包括:
从步骤表中读取步骤信息;
根据所述步骤信息的对象关键字字段的值,从对象表中获取与该对象关 键字对应的对象的信息;
根据所述获取的对象的信息判断所述对象是否为逻辑分支关键字对象; 以及
如果所述对象是逻辑分支关键字对象,则对所述对象进行逻辑分支控制 处理。

2.  如权利要求1所述的方法,其特征在于,所述方法进一步包括步骤:
如果所述对象不是逻辑分支关键字对象,则对所述对象执行预定义的操 作。

3.  如权利要求1所述的方法,其特征在于,所述对所述对象进行逻辑分 支控制处理包括:
解析所述读取的步骤信息的参数字段,得到解析结果;
根据所述解析结果,执行所述步骤信息的指定步骤。

4.  如权利要求3所述的方法,其特征在于,所述解析结果包括:
自定义的代码、数值或表达式。

5.  如权利要求4所述的方法,其特征在于,所述根据所述解析结果,执 行所述步骤信息的指定步骤包括:
判断所述解析结果是否为所述表达式;
如果所述解析结果是所述表达式,则执行表达式,得到二级解析结果, 再根据所述二级解析结果,执行所述步骤信息的指定步骤。

6.  如权利要求2所述的方法,其特征在于,所述对所述对象执行预定义 的操作包括:
判断所述对象的类别;
根据所述对象的类别,对所述对象执行预定义的操作步骤。

7.  一种基于关键字的自动测试系统,其特征在于,所述系统包括:
读取模块,用于从步骤表中读取步骤信息;
获取模块,用于根据所述步骤信息的对象关键字字段的值,从对象表中 获取与该对象关键字对应的对象的信息;
判断模块,用于根据所述获取的对象的信息判断所述对象是否为逻辑分 支关键字对象;
第一执行模块,用于如果所述对象是逻辑分支关键字对象,则对所述对 象进行逻辑分支控制处理。

8.  如权利要求7所述的系统,其特征在于,所述系统进一步包括:
第二执行模块,用于如果所述对象不是逻辑分支关键字对象,则对所述 对象执行预定义的操作。

9.  如权利要求7所述的系统,其特征在于,所述第一执行模块包括:
解析子模块,用于解析所述读取的步骤信息的参数字段,得到解析结果;
执行子模块,用于根据所述解析结果,执行所述步骤信息的指定步骤。

10.  如权利要求9所述的系统,其特征在于,所述解析结果包括:
自定义的代码、数值或表达式。

11.  如权利要求10所述的系统,其特征在于,所述执行子模块包括:
判断单元,用于判断所述解析结果是否为所述表达式;
执行单元,用于如果所述解析结果是所述表达式,则执行表达式,得到 二级解析结果,再根据所述二级解析结果,执行所述步骤信息的指定步骤。

12.  如权利要求8所述的系统,其特征在于,所述第二执行模块包括:
对象类别判断子模块,用于判断所述对象的类别;
预定义执行子模块,用于根据所述对象的类别,对所述对象执行预定义 的操作步骤。

说明书

说明书基于关键字的自动测试方法及系统
技术领域
本发明涉及数据处理领域,更为具体而言,涉及一种基于关键字的自动 测试方法及系统。
背景技术
为了提高测试效率和准确性,越来越多的测试工作引入了自动化测试的 思想和方法,随着自动化测试工具的发展,自动化测试更加容易实现且更高 效。实践证明,软件自动化测试技术帮助软件开发和测试人员在更短的时间 内开发出更高质量的产品,通过代替频繁重复的手工测试从而节省了大量的 时间开支。同时,自动化测试技术也避免了手工测试出现的人为错误,完成 了许多手工测试无法实现的工作。
现有的自动化测试方式大致分为两种:代码驱动和关键字驱动。这两种 测试方式都是利用机器行为代替手工的行为。代码驱动的测试系统需要测试 人员通过编写符合一定条件的脚本来实现操作的逻辑;而关键字驱动的测试 系统则不需要使用人员具备代码基础,通过一种友好的设计方式提供专门的 解析语法,使用者通过学习这种友好的语法来完成测试行为的逻辑。
然而现有的基于关键字的测试系统无法实现逻辑分支控制,只能单一的 执行流程,同时在执行的过程中容错很差,无法做到运行中判定是否已经出 错,导致运行效率不高。
发明内容
为了解决当前现有的基于关键字的测试系统无法实现逻辑分支控制所导 致的运行效率不高的问题,本发明的实施方式提供了一种基于关键字的自动 测试方法及系统。
一方面,本发明实施方式提供了一种基于关键字的自动测试方法,所述 方法包括:
从步骤表中读取步骤信息;
根据所述步骤信息的对象关键字字段的值,从对象表中获取与该对象关 键字对应的对象的信息;
根据所述获取的对象的信息判断所述对象是否为逻辑分支关键字对象; 以及
如果所述对象是逻辑分支关键字对象,则对所述对象进行逻辑分支控制 处理。
相应的,本发明实施方式还提供了一种基于关键字的自动测试系统,所 述系统包括:
读取模块,用于从步骤表中读取步骤信息;
获取模块,用于根据所述步骤信息的对象关键字字段的值,从对象表中 获取与该对象关键字对应的对象的信息;
判断模块,用于根据所述获取的对象的信息判断所述对象是否为逻辑分 支关键字对象;
第一执行模块,用于如果所述对象是逻辑分支关键字对象,则对所述对 象进行逻辑分支控制处理。
实施本发明的各种实施方式具有以下有益效果:可实现测试系统在流程 执行过程中不同条件下的选择执行,使得运行过程的容错性更好,从而提高 测试系统的运行效率。
附图说明
图1是根据本发明实施方式的基于关键字的自动测试方法的流程图;
图2是本发明的基于关键字的自动测试方法的更详细实施例;
图3是根据本发明实施方式的基于关键字的自动测试系统的架构图;
图4示出了图3所示的第一执行模块400的框图;
图5示出了图4所示的执行子模块420的框图;
图6是根据本发明实施方式的系统中的第二执行模块500的框图。
具体实施方式
以下结合附图和具体实施方式对本发明的各个方面进行详细阐述。其中, 众所周知的模块、单元及其相互之间的连接、链接、通信或操作没有示出或 未作详细说明。并且,所描述的特征、架构或功能可在一个或一个以上实施 方式中以任何方式组合。本领域技术人员应当理解,下述的各种实施方式只 用于举例说明,而非用于限制本发明的保护范围。还可以容易理解,本文所 述和附图所示的各实施方式中的模块或单元或处理方式可以按各种不同配置 进行组合和设计。
图1是根据本发明实施方式的基于关键字的自动测试方法的流程图;参 见图1,该方法可以包括:
S1,从步骤表中读取步骤信息;其中,步骤表是存储待执行用例的所有 步骤的表,该表主要包含以下三个字段的属性信息:关键字、行为和参数。
S2,根据步骤信息的对象关键字字段的值,从对象表中获取与对象关键 字对应的对象的信息;其中,步骤信息是指存储在步骤表中每一步步骤的内 容,对应于步骤表的各字段,关键字字段表明该步骤实际操作的对象,行为 字段表明该步骤需要执行的行为,参数字段表明在执行这一步骤的时候可能 传入的参数。
其中,对象包括但不仅限于以下类型:1.待测系统中的控件对象,涉及点 击,勾选,获取文本,判断是否可见等操作。2.文件资源,涉及创建,删除, 执行(可执行脚本,第三方工具)等操作。3.系统资源,如注册表、服务、进程 等,涉及创建,删除,关闭等操作。4.逻辑控制方法,如if…else分支判断, try…catch异常处理等。5.自定义的方法接口,后台会对一些完成特定功能可 重复使用的步骤进行封装形成函数库。上述2、3和4类型数据是抽象于相对静 态的资源,故针对不同的待测系统不涉及替换操作;上述1和5等类型,只需 根据待测产品在存储系统中对数据进行相应更新即可。所有数据对象在存储 系统中都采用关键字进行描述。在步骤表中,通过关键字来表示某种具体对 象,例如:用“File”来表示文件对象,相对应的,文件对象包含的行为有复 制、创建、删除等。又如,用“if…true”表示逻辑分支控制关键字对象,这 个关键字所在的步骤就表示要进行逻辑分支判断操作。在编写测试用例的时 候,通过对对象和操作的组合实现具体的测试用例,不需要使用者具备代码 基础。
S3,根据获取的对象的信息判断对象是否为逻辑分支关键字对象,其中, 逻辑分支关键字对象是关键字对象的一种,用于表示逻辑分支控制的行为, 逻辑分支关键字对象的参数字段格式为:[验证表达式],[步骤列表];以及
S41,如果对象是逻辑分支关键字对象,则对对象进行逻辑分支控制处理, 可通过下述代码实现逻辑分支控制处理的过程:
If[验证表达式]=真:
执行具体步骤
Else:
不执行具体步骤
或者
If[验证表达式]=假:
执行具体步骤
Else:
不执行具体步骤
其中,对对象进行逻辑分支控制处理包括:解析读取的步骤信息的参数 字段,得到解析结果;根据解析结果,执行步骤信息的指定步骤。其中,解 析结果可以是自定义的代码、数值(例如:TURE或FALSE,0或1,空或非 空),也可以是可得出TURE或FALSE的算术表达式,例如1+2>2,前一步 骤的返回值为TURE或非0等。如果解析结果为表达式,则执行表达式,得 到二级解析结果(TURE或FALSE等),再根据二级解析结果,执行步骤信息 的指定步骤。
S42,如果对象不是逻辑分支关键字对象,对对象执行预定义的操作,其 中,对对象执行预定义的操作可包括:首先判断对象的类别;而后,根据对 象的类别,对对象执行预定义的操作。例如,对于文件类型的对象,具体操 作可以有读取、写入、复制等操作;对于控件类型的对象,则可以有控件点 击、获取控件文本、判断控件是否可见等操作。
在本发明的实施方式中,测试人员在处理测试过程时,可通过下述过程 完成测试:1.测试人员编写用例步骤,并将其存储在步骤表中。其中,用例 步骤包括每一个步骤需要执行的操作,在此过程中,根据用例的流程选择是 否需要进行分支控制,来使用例步骤的容错性更强。2.编写完成后,测试人 员可以利用系统提供的配套的界面工具,执行已经写好的步骤,此执行过程 便是系统的执行流程。3.全部步骤执行完毕,用例执行完毕。通过实施本发 明实施方式的方法,可实现测试系统在流程执行过程中不同条件下的选择执 行,使得运行过程的容错性更好,从而提高运行效率。
图2是本发明的基于关键字的自动测试方法的实施例;参见图2,该方法 可以包括:
S01,从步骤表中读取步骤信息(对象关键字、行为和参数);
S02,根据步骤信息的对象关键字字段的值,从对象表中获取与对象关键 字对应的对象的信息;其中,步骤表和对象表的信息与图1中的相关内容一 致,在此不再赘述。
S03,根据获取的对象的信息,判断对象是否为逻辑分支关键字对象,如 果是,则执行S041,否则执行S05;
S041,解析参数字段的内容,逻辑分支关键字对象的参数字段格式为:[验 证表达式],[步骤列表];
S042,解析参数字段的验证表达式;
S043,判断验证表达式是否为数值(例如:TURE或FALSE,0或1,空 或非空),如果是,则执行S045,否则执行S044;
S044,执行表达式,计算返回值;其中表达式是可得出TURE或FALSE 的算术表达式,例如1+2>2,计算得到的返回值为TURE或非0等。
S045,判断数值是否为指定值(TURE或FALSE),如果是,则说明对象 是逻辑分支关键字对象,执行S046,否则返回S01;
S046,执行参数的指定执行步骤,指定执行步骤为关键字所预定义的指 定执行步骤(例如读取、写入、复制等操作);
S05,根据对象的类别,对对象执行预定义的操作。例如,对于文件类型 的对象,具体操作有读取、写入、复制等操作;对于控件类型的对象,则行 为有控件点击、获取控件文本、判断控件是否可见等操作。
图3根据本发明实施方式的基于关键字的自动测试系统1的架构图;参 见图3,该系统可以包括:
读取模块100,用于从步骤表中读取步骤信息;其中,步骤表是存储待执 行用例的所有步骤的表,该表主要包含以下三个字段的属性信息:关键字、 行为和参数。
获取模块200,用于根据步骤信息的对象关键字字段的值,从对象表中获 取与对象关键字对应的对象的信息,其中,步骤信息是指存储在步骤表中每 一步步骤的内容,对应于步骤表的各字段,关键字字段表明该步骤实际操作 的对象,行为字段表明该步骤需要执行的行为,参数字段表明在执行这一步 骤的时候可能传入的参数。其中,步骤表和对象表与图1中的相关内容一致, 在此不再赘述。
判断模块300,用于根据获取的对象的信息判断对象是否为逻辑分支关键 字对象,其中,逻辑分支关键字对象的参数字段格式为:[验证表达式],[步骤 列表];
第一执行模块400,用于如果对象是逻辑分支关键字对象,则对对象进行 逻辑分支控制处理。可通过下述代码实现逻辑分支控制处理的过程:
If[验证表达式]=真:
执行具体步骤
Else:
不执行具体步骤
或者
If[验证表达式]=假:
执行具体步骤
Else:
不执行具体步骤
其中,逻辑分支控制处理包括:解析读取的步骤信息的参数字段,得到 解析结果;根据解析结果,执行步骤信息的指定步骤。
另外,系统可以进一步包括:
第二执行模块,用于如果对象不是逻辑分支关键字对象,则对对象执行 预定义的操作。例如,对于文件类型的对象,具体操作有读取、写入、复制 等操作;对于控件类型的对象,则行为有控件点击、获取控件文本、判断控 件是否可见等操作。
在本发明的实施方式中,测试人员在处理测试过程时,可通过下述过程 完成测试:1.测试人员编写用例步骤,并将其存储在步骤表中。其中,用例 步骤包括每一个步骤需要执行的操作,在此过程中,根据用例的流程选择是 否需要进行分支控制,来使用例步骤的容错性更强。2.编写完成后,测试人 员可以利用系统提供的配套的界面工具,执行已经写好的步骤,此执行过程 便是系统的执行流程。3.全部步骤执行完毕,用例执行完毕。
通过实施本发明实施方式的系统,可实现测试系统在流程执行过程中不 同条件下的选择执行,使得运行过程的容错性更好,从而提高运行效率。
图4示出了图3所示的第一执行模块400的框图;参见图4,第一执行模 块400可以包括:
解析子模块410,用于解析读取的步骤信息的参数字段,得到解析结果;
执行子模块420,用于根据解析结果,执行步骤信息的指定步骤。
其中,解析结果可以是自定义的代码、数值(例如:TURE或FALSE,0 或1,空或非空),也可以是可得出TURE或FALSE的算术表达式,例如1+2>2, 前一步骤的返回值为TURE或非0等。
图5示出了图4所示的执行子模块420的框图;参见图4,执行子模块 420可以包括:
判断单元421,用于判断解析结果是否为表达式;
执行单元422,用于如果解析结果是表达式,则执行表达式,得到二级解 析结果(TURE或FALSE等),再根据二级解析结果,执行步骤信息的指定步 骤。
图6是本发明所述系统中的第二执行模块500的框图;参见图6,第二执 行模块500可以包括:
对象类别判断子模块510,用于判断对象的类别;
预定义执行子模块520,用于根据所述对象的类别,对对象执行预定义的 操作步骤。
例如,对于文件类型的对象,具体操作有读取、写入、复制等操作;对 于控件类型的对象,则行为有控件点击、获取控件文本、判断控件是否可见 等操作。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发 明可以全部通过软件来实现,可借助软件结合硬件平台的方式来实现,当然 也可以全部通过硬件来实施。基于这样的理解,本发明的技术方案对现有技 术做出贡献的全部或者部分可以以软件产品的形式体现出来,该计算机软件 产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令 用以使得一台计算机设备(可以是个人计算机,服务器,智能手机或者网络 设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
本发明说明书中使用的术语和措辞仅仅为了举例说明,并不意味构成限 定。本领域技术人员应当理解,在不脱离所公开的实施方式的基本原理的前 提下,对上述实施方式中的各细节可进行各种变化。因此,本发明的范围只 由权利要求确定,在权利要求中,除非另有说明,所有的术语应按最宽泛合 理的意思进行理解。

基于关键字的自动测试方法及系统.pdf_第1页
第1页 / 共10页
基于关键字的自动测试方法及系统.pdf_第2页
第2页 / 共10页
基于关键字的自动测试方法及系统.pdf_第3页
第3页 / 共10页
点击查看更多>>
资源描述

《基于关键字的自动测试方法及系统.pdf》由会员分享,可在线阅读,更多相关《基于关键字的自动测试方法及系统.pdf(10页珍藏版)》请在专利查询网上搜索。

本发明公开了一种基于关键字的自动测试方法及系统,所述方法包括:从步骤表中读取步骤信息;根据所述步骤信息的对象关键字字段的值,从对象表中获取与该对象关键字对应的对象的信息;根据所述获取的对象的信息判断所述对象是否为逻辑分支关键字对象;以及如果所述对象是逻辑分支关键字对象,则对所述对象进行逻辑分支控制处理。通过采用本发明中的基于关键字的自动测试方法及系统,可实现测试系统在流程执行过程中不同条件下的选择。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 物理 > 计算;推算;计数


copyright@ 2017-2020 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1