一种自动化测试方法和系统技术方案

技术编号:8532759 阅读:133 留言:0更新日期:2013-04-04 15:43
本发明专利技术公开了一种自动化测试方法,对自动化测试过程中涉及的每个测试对象、每个测试对象包含的操作方法和参数、每个功能过程以及静态元素分别进行封装,为每一个封装后的测试对象、操作方法、参数、功能过程和静态元素映射一个一一对应的关键字,输入由至少一个关键字组成的测试脚本,对测试脚本进行解析,获取测试脚本中的全部关键字,根据解析获得的关键字,分别获取关键字对应的封装后的测试对象、参数和静态元素,执行关键字对应的封装后的操作方法和功能过程。本发明专利技术还公开了一种自动化测试系统。采用本发明专利技术公开的自动化测试方法和系统,能够提高自动化测试的效率和通用性。

【技术实现步骤摘要】

本专利技术涉及计算机技术,特别是涉及一种自动化测试方法和系统
技术介绍
目前,在进行软件测试时,常采用自动化测试的方法。自动化测试是把以人为驱动 的测试行为转化为机器执行的一种过程。如果采用非自动化测试的方法,则在设计了测试 用例并通过评审之后,由测试人员根据测试用例中描述的规程一步步执行测试,得到实际 结果与期望结果的比较。随着软件测试技术的发展,为了节省人力、时间、硬件资源,提高测 试效率,提出了自动化测试方法。自动化测试与软件开发过程本质上是一致的,利用自动化 测试工具,经过对测试需求的分析,设计出自动化测试用例,从而搭建自动化测试的框架, 设计与编写自动化测试脚本,通过测试该脚本的正确性,从而完成该套测试脚本。目前的自动化测试方法中,预先编写测试框架,在该框架中为测试需要的基础操 作提供接口以供调用,在测试时,测试人员根据用例操作需求,人工编写调用上述接口的自 动化测试脚本。采用此方法,要求参与测试的脚本开发人员以及后期运行维护人员都必须 具有很高的代码水平,自动化脚本的开发和运行维护的成本大。并且,采用此方法,在测试 时需要人工编写脚本,从而导致测试过程所需时间长,测试效率低,并且,采用此方法,对测 试人员的技术要求高,从而导致测试方法的通用性差。
技术实现思路
本专利技术提供了一种自动化测试方法,采用该方法能够提高自动化测试的效率和通 用性。本专利技术还提供了一种自动化测试系统,采用该系统能够提高自动化测试的效率和 通用性。为达到上述目的,本专利技术的技术方案是这样实现的本专利技术提供一种自动化测试方法,包括对自动化测试过程中涉及的每个测试对象、所述每个测试对象包含的操作方法和 参数、每个功能过程以及静态元素分别进行封装,为每一个封装后的所述测试对象、所述操 作方法、所述参数、所述功能过程和所述静态元素映射一个一一对应的关键字;输入由至少一个关键字组成的测试脚本;对所述测试脚本进行解析,获取所述测试脚本中的全部关键字;根据解析获得的全部所述关键字,分别获取所述关键字对应的封装后的所述测试 对象、所述参数和所述静态元素,执行所述关键字对应的封装后的所述操作方法和所述功 能过程。所述输入由至少一个关键字组成的测试脚本之前还包括创建所述测试脚本;所述创建所述测试脚本之后还包括存储所述测试脚本;和/或,查看所述测试脚 本;和/或,导出所述测试脚本;和/或,编辑所述测试脚本;和/或,删除所述测试脚本;和/或,关联至少两个所述测试脚本;和/或,查看测试脚本的执行结果。所述测试脚本采用伪代码。本专利技术还提供一种自动化测试系统,包括封装单元,用于对自动化测试过程中涉及的每个测试对象、所述每个测试对象包 含的操作方法和参数、每个功能过程以及静态元素分别进行封装,为每一个封装后的所述 测试对象、所述操作方法、所述参数、所述功能过程和所述静态元素映射一个一一对应的关 键字;浏览器,用于输入由至少一个关键字组成的测试脚本;解析模块,用于对所述测试脚本进行解析,获取所述测试脚本中的全部关键字;执行模块,用于根据所述解析模块获取的全部所述关键字,分别获取所述关键字 对应的封装后的所述测试对象、所述参数和所述静态元素,执行所述关键字对应的封装后 的所述操作方法和所述功能过程。所述封装单元包括底层支撑模块和对象工厂模块;所述底层支撑模块,用于对自动化测试过程中涉及的每个测试对象、所述每个测 试对象包含的操作方法和参数、以及每个功能过程分别进行封装,为每一个封装后的所述 测试对象、所述操作方法、所述参数和所述功能过程映射一个一一对应的关键字;所述对象工厂模块,用于存储经过封装的自动化测试过程中涉及的每个静态元素 和每个所述静态元素对应的关键字;所述执行模块,具体用于根据解析模块获得的至少一个关键字,获取底层支撑模 块存储的所述至少一个操作关键字对应的测试对象、操作方法、参数和功能过程,分别执行 所述操作方法和功能过程,在执行所述操作方法和功能过程的过程中,从所述对象工厂模 块调用所述操作方法和功能过程中涉及的静态元素。所述底层支撑模块包括测试对象接口、测试帮助接口、操作系统对象接口、应用 程序用户接口;所述测试对象接口用于实现窗口操作和/或控件操作;所述测试帮助接口用于实现辅助功能;所述操作系统对象接口用于提供系统对象;所述应用程序用户接口用于实现应用程序的用户操作和进程操作。所述装置还包括管理模块,用于创建所述测试脚本、和/或存储所述测试脚本、和/或查看所述测 试脚本、和/或导出所述测试脚本、和/或编辑所述测试脚本、和/或删除所述测试脚本、和 /或关联至少两个所述测试脚本、和/或查看测试脚本的执行结果。 所述管理模块包括管理接口 ;所述管理接口用于所述管理模块与所述解析模块交互,以检查所述测试脚本的格 式;和/或,所述管理接口用于所述管理模块与所述执行模块交互,以触发所述执行 模块启动执行测试脚本;和/或,所述管理接口用于所述管理模块与所述浏览器交互,以创建所述测试脚 本、和/或编辑所述测试脚本、和/或存储所述测试脚本、和/或查看所述测试脚本、和/或导出所述测试脚本、和/或删除所述测试脚本、和/或关联至少两个所述测试脚本。所述解析模块包括解析接口 ;所述解析接口连接所述执行模块,所述执行模块调用所述解析接口向所述解析模 块传入所述测试脚本并从所述解析模块获取解析结果;和/或,所述解析接口连接所述管理模块,所述管理模块调用所述解析接口向所 述解析模块传入所述测试脚本并从所述解析模块获取格式检查结果和/或解析结果;和/或,所述解析接口连接所述浏览器,所述浏览器通过所述解析接口向所述解 析模块传入所述测试脚本。所述测试脚本采用伪代码。由上述
技术实现思路
可见,通过将自动化测试过程中涉及的每个测试对象、每个测试 对象包含的操作方法和参数、每个功能过程以及静态元素分别进行封装,为每一个封装后 的测试对象、操作方法、参数、功能过程和静态元素映射一个一一对应的关键字,测试人员 输入所需测试的功能对应的关键字的组合,根据关键字执行该关键字对应的经过封装的上 述内容,完成测试过程,从而不必在测试过程中编写针对本次测试的复杂的代码,提高了自 动化测试的效率,并且,不必要求测试人员掌握现有的编程语言,提高了自动化测试方法和 系统的通用性。附图说明图1是本专利技术实施例一的自动化测试方法的流程图2是本专利技术实施例二的自动化测试系统的结构示意图。具体实施方式为了使本专利技术的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对 本专利技术进行详细描述。本专利技术的基本思想是将自动化测试过程中所需的每个功能对应的代码分别进行 封装并映射一个关键字,在测试时,测试人员只需输入所需测试的功能对应的关键字或关 键字的组合,即可根据关键字执行该关键字对应的经过封装的代码,从而完成测试过程。图1是本专利技术实施例一的自动化测试方法的流程图。如图1所示,该方法包括如 下过程。步骤101 :对自动化测试过程中涉及的每个测试对象、每个测试对象包含的操作 方法和参数、每个功能过程以及静态元素分别进行封装,为每一个封装后的测试对象、操作 方法、参数、功能过程和静态元素映射一个一一对应的关键字。在本步骤中,具体地,上述功能过程可以是一个或多个操作方法的组合。上述静态 元素可以为窗口等静态元素,上述操作本文档来自技高网
...

【技术保护点】
一种自动化测试方法,其特征在于,包括:对自动化测试过程中涉及的每个测试对象、所述每个测试对象包含的操作方法和参数、每个功能过程以及静态元素分别进行封装,为每一个封装后的所述测试对象、所述操作方法、所述参数、所述功能过程和所述静态元素映射一个一一对应的关键字;输入由至少一个关键字组成的测试脚本;对所述测试脚本进行解析,获取所述测试脚本中的全部关键字;根据解析获得的全部所述关键字,分别获取所述关键字对应的封装后的所述测试对象、所述参数和所述静态元素,执行所述关键字对应的封装后的所述操作方法和所述功能过程。

【技术特征摘要】
1.一种自动化测试方法,其特征在于,包括 对自动化测试过程中涉及的每个测试对象、所述每个测试对象包含的操作方法和参数、每个功能过程以及静态元素分别进行封装,为每一个封装后的所述测试对象、所述操作方法、所述参数、所述功能过程和所述静态元素映射一个一一对应的关键字; 输入由至少一个关键字组成的测试脚本; 对所述测试脚本进行解析,获取所述测试脚本中的全部关键字; 根据解析获得的全部所述关键字,分别获取所述关键字对应的封装后的所述测试对象、所述参数和所述静态元素,执行所述关键字对应的封装后的所述操作方法和所述功能过程。2.根据权利要求1所述的方法,其特征在于, 所述输入由至少一个关键字组成的测试脚本之前还包括创建所述测试脚本; 所述创建所述测试脚本之后还包括存储所述测试脚本;和/或,查看所述测试脚本;和/或,导出所述测试脚本;和/或,编辑所述测试脚本;和/或,删除所述测试脚本;和/或,关联至少两个所述测试脚本;和/或,查看测试脚本的执行结果。3.根据权利要求1或2所述的方法,其特征在于, 所述测试脚本采用伪代码。4.一种自动化测试系统,其特征在于,包括 封装单元,用于对自动化测试过程中涉及的每个测试对象、所述每个测试对象包含的操作方法和参数、每个功能过程以及静态元素分别进行封装,为每一个封装后的所述测试对象、所述操作方法、所述参数、所述功能过程和所述静态元素映射一个一一对应的关键字; 浏览器,用于输入由至少一个关键字组成的测试脚本; 解析模块,用于对所述测试脚本进行解析,获取所述测试脚本中的全部关键字; 执行模块,用于根据所述解析模块获取的全部所述关键字,分别获取所述关键字对应的封装后的所述测试对象、所述静态元素,执行所述关键字对应的封装后的所述操作方法和所述功能过程。5.根据权利要求4所述的系统,其特征在于, 所述封装单元包括底层支撑模块和对象工厂模块; 所述底层支撑模块,用于对自动化测试过程中涉及的每个测试对象、所述每个测试对象包含的操作方法和参数、以及每个功能过程分别进行封装,为每一个封装后的所述测试对象、所述操作方法、所述参数和所述功能过程映射一个一一对应的关键字; 所述对象工厂模块,用于存储经过封装的自动化测试过程中涉及的每个静态元素...

【专利技术属性】
技术研发人员:刘显健孙冬梅
申请(专利权)人:北京新媒传信科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1